У меня есть база данных SQL, содержащая географическую информацию. Эта база данных имеет три таблицы:
PostalCode
----------
Code (char(10))
StateID (uniqueidentifier)
State
-----
ID (uniqueidentifier)
Name (nvarchar(max))
CountryID (uniqueidentifier)
Country
-------
ID (uniqueidentifier)
Name
Отношения таковы: в стране есть штаты. Штаты имеют почтовые индексы. Я пытаюсь создать запрос, в котором я могу найти все штаты в стране, которым принадлежит определенный почтовый индекс. В настоящее время я пытаюсь сделать следующее:
SELECT
s.*
FROM
[PostalCode] p,
[State] s,
[Country] c
WHERE
p.[Zip]='90028' AND
p.[StateID]=s.[ID] AND
s.[CountryID]=c.[ID]
К сожалению, этот результат возвращает 1 запись (запись штата, связанная с Калифорнией). Однако на самом деле мне нужно, чтобы он возвращал 50 записей (по одной для каждого штата в США). Как изменить этот запрос, чтобы сделать это?
Спасибо