我有一个包含地理信息的 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 条记录(美国每个州一个)。如何修改此查询以执行此操作?
谢谢