-3
CREATE TABLE [dbo].[Country](
[Id] [int] NOT NULL,
[name] [varchar](50) NULL)
CREATE TABLE [dbo].[State](
[Id] [int] NOT NULL,
[name] [varchar](50) NULL,
[CountryId] [int] NULL references Country(Id))
CREATE TABLE [dbo].[City](
[Id] [int] NOT NULL,
[name] [varchar](50) NULL,
[StateId] [int] NULL references State(Id))
Value in table
-------
1 USA
2 UK
国家
-----
1 NY 1
2 NSW NULL
市
-----
1 Sydney 2
2 Mumbai NULL
3 Delhi 1
现在我想的City.Name,State.Name,Country.Name名单也有NULL值。
e.g悉尼新南威尔士州NULL 德里美国纽约 避免重复记录
我尝试这个查询,但有些错误在里面:
SELECT Country.name, City.Name AS Expr1, State.Name AS Expr2
FROM City CROSS JOIN
State CROSS JOIN
Country
WHERE (City.StateId IN
(SELECT StateId
FROM City AS City_1)) OR
(State.CountryId IN
(SELECT CountryId
FROM State AS State_1))
@MartinSmith:这不是告诉我NULL值。 – 2012-03-02 18:14:29
我不知道他们在面试中问我多少正确的问题。 – 2012-03-02 18:15:22
发布您的查询。 – 2012-03-02 18:18:05