1
Этот запросMysql: Join Table Только Первый ряд на левой таблице
SELECT * FROM Question
INNER JOIN Question_Answer
ON Question.question_id = Question_Answer.question_id
WHERE Question.question_group_id = 518
Вопрос Таблица имеет следующие столбцы:
question_id|question_name|question_type|question_group_id|question_ask
1 |100-105 | gr | 518 | question1
2 |100-105 | gr | 518 | question2
3 |100-105 | gr | 518 | question3
4 |100-105 | gr | 518 | question4
Question_Answer имеет следующие столбцы:
question_id|question_answer_text|question_answer_id|question_answer_is_correct
518 |Text1 |1107 |1
518 |Text2 |1108 |1
518 |Text3 |1109 |1
518 |Text4 |1110 |1
Проблема в том, что он выдает что-то вроде этого:
question_id|question_name|question_type|question_group_id|question_ask|question_id|question_answer_text|question_answer_id|question_answer_is_correct
1 |100-105 | gr | 518 | question1 | 518 |Text1 |1107 |1
1 |100-105 | gr | 518 | question1 | 518 |Text2 |1108 |1
1 |100-105 | gr | 518 | question1 | 518 |Text3 |1109 |1
1 |100-105 | gr | 518 | question1 | 518 |Text4 |1110 |1
То, что я хочу, чтобы достичь это:
1 |100-105 | gr | 518 | question1 | 518 |Text1 |1107 |1
2 |100-105 | gr | 518 | question2 | 518 |Text2 |1108 |1
3 |100-105 | gr | 518 | question3 | 518 |Text3 |1109 |1
4 |100-105 | gr | 518 | question4 | 518 |Text4 |1110 |1
Ваши данные испорчены. Quesiton.Question_ID {1,2,3,4} Question_answer Question_ID - это только {518}. 518 никогда не будет равняться {1,2,3,4}. Я удивлен, что вы получаете данные с этим запросом. Возможно, вы хотите присоединиться к 'Question.question_group_Id к Question_Answer.Question_ID', хотя это тоже приведет к слишком большому количеству ассоциаций. так что вам нужно будет что-то в таблице ответов вернуться к question_id в таблице вопросов ... да ... Я думаю, что плохие данные в таблице ответов .... В частности, в вопросе_Id столбец – xQbert
Вау! Спасибо! Я этого не заметил. Это действительно беспорядок в данных. Я не уверен, откуда испугалась ошибка. Дело в том, что question_id в Question_Answer должен был быть 1, 2, 3 и 4 соответственно. Некоторая ошибка в программе изменила его на тот же идентификатор, который является question_group_id из таблицы вопросов. Это то, что я должен проследить. – HDKT
Правило большого пальца: если что-то перестает работать, а код не меняется, сначала просмотрите данные. : P – xQbert