У меня есть visitor
таблицу, которая выглядит следующим образом:Как вернуть несколько результатов в подзапрос?
VID Name Address DOB
001 Bob 101 St 03/05/2001
002 James 505 Rd 02/06/1985
003 Jill 201 Place 04/06/1970
И в visits
таблицу, которая выглядит следующим образом:
VID Date Reason
001 05/07/2012 Family
001 06/01/2012 Family
003 03/02/2011 Other
Я хочу сделать запрос с соединением между этими двумя на VID (который я уже сделал), но также имеет запрос показать все (несколько) результатов от посещений. Таким образом, результаты будут выглядеть так:
Name DOB Visits
Bob 03/05/2001 05/07/2012 Family, 06/01/2012 Family
James 02/06/1985
Jill 04/06/1970 03/02/2011 Other
Возможно ли это? Я попытался выполнить такой подзапрос, как:
SELECT Название, DOB, (SELECT Дата, причина FROM посещений AS H WHERE H.VID = visitor.VID) В качестве посещений FROM visitor;
Но это дало мне очевидное Subquery returned more than 1 value
Ошибка. Данные будут обрабатываться PHP, но я надеялся выполнить это в одном запросе.
Какую версию sql-сервера вы используете? –
@Lieven 2008 R2, добавленный к моему вопросу. – JBurace
В отличие от де-номинализации конкретного поля, другой вариант заключается в том, чтобы * сгладить * весь набор результатов, а затем сгруппировать КЛЮЧ. (Будет 6 записей здесь.) –