2016-12-09 1 views
2

У меня есть две таблицыКак получить два значения из двух разных таблиц в одном SQL

  • Вопросы

    • Id_question
    • вопрос
  • Ответы

    • Id_question
    • Id_answers
    • ответ

Если я использую этот запрос,

select q.question, a.answer from Question q, Answers a where q.Id_question= a.Id_question 

я получаю вопрос и asociated ответы, но я повторяю вопросы, например

вопрос

First question? 
    Yes 
First question? 
No 
Second question? 
Probably 
Second question? 
Yei 

Можно ли задать первый вопрос и ответить на него, а затем получить второй вопрос и ответы на вопросы без повторного вопроса?

+0

Да, укажите данные вашего образца таблицы – Rahul

+0

MySQL или SQL Server? У вас есть оба тега ... – jleach

ответ

4

Это не совсем понятно, что вы ищете в выходных данных, но вы могли бы попробовать что-то вроде этого:

select q.question, group_concat(a.answer) 
from Question q, Answers a 
where q.Id_question= a.Id_question 
group by q.question 

функция group_concat даст вам список разделенных запятыми. Результат должен выглядеть следующим образом:

First question? | Yes, No 
Second question? | Probably, Yei 
+0

Обратите внимание, что group_concat предназначен только для MySQL, а не для SQL Server (OP имеет оба механизма с тегами) – jleach

+0

Да, это решение :) У меня есть приложение php, и я использую два запроса, чтобы получить ответы, нарисовать вопрос в радио в циклах, этот запрос более прост – ciberelfo

Смежные вопросы