0
我定義爲三個表時:查詢沒有返回預期的結果,包括一個空表
CREATE TABLE [garageInfo] (
[griId] int identity(1,1) NOT NULL,
[grId] int NOT NULL,
[shId] int NOT NULL,
[subEquipment] varchar(100) NULL,
[make] varchar(50) NULL,
[model] varchar(50) NULL,
[serialNo] varchar(50) NULL,
[pcr] varchar(50) NULL,
[mop] varchar(50) NULL,
[mopDesc] varchar(50) NULL
)
;
CREATE TABLE [car] (
[crId] int identity(1,1) NOT NULL,
[crDli] smallint NULL,
[crName] varchar(60) NULL
)
;
CREATE TABLE [garage] (
[grId] int identity(1,1) NOT NULL,
[grName] varchar(100) NOT NULL,
[grDli] smallint NULL,
[crId] int NOT NULL
)
;
表和car
包含數據和預期收益記錄時,我運行下面的查詢。
select * from garage p, car m WHERE p.crId=m.crId
但garageInfo
目前是空的,但將得到填補與時間記錄,但我有以下我跑這給我的回報0
行查詢,如何我希望它給我的是所有列garageInfo
爲空並且來自其他表的兩列以及它們各自的值,但它不是。
select * from garage p, car m, garageInfo gr WHERE p.crId=m.crId AND gr.grId=p.grId
任何人都可以請幫助我這裏有什麼問題嗎?
[不良習慣踢:使用舊樣式的JOIN(HTTP: //sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx) - 舊式*逗號分隔的表格樣式列表*樣式已停止使用ANSI - ** 92 ** SQL標準(超過** 20年前**) –