5

我创建 SQL 服务器查询并有一个带有记录的普通表,另一方面有一个带有记录的临时表,该表不为空,所有字段都没有任何冲突可以加入

可以加入这两个不同类型的表吗?

SELECT NormalTable.Entityname  FROM NormalTable LEFT JOIN 
       #Temp tmp ON tmp.joinID = NormalTable.joinID
4

1 回答 1

6

可以加入这两个不同类型的表吗?(正常和临时)

是的,可以加入不同类型的表(永久表和临时表)。连接这些表没有不同的语法。

例如

永久表:

CREATE TABLE NormalTable
    ([plateno] varchar(1), [JoinID] int)
;

INSERT INTO NormalTable
    ([plateno], [JoinID])
VALUES
    ('A', 1),
    ('B', 2),
    ('C', 2),
    ('A', 3),
    ('B', 2),
    ('A', 4),
    ('A', 1)
;

临时表:

CREATE TABLE #Temp
    ([id] int, [date] date, [score] int)
;

INSERT INTO #Temp
    ([id], [date], [score])
VALUES
    (1, '2013-04-13', 100),
    (2, '2013-04-14', 92),
    (3, '2013-04-15', 33)
;

加入两个表:

SELECT N.* FROM NormalTable N
LEFT JOIN #Temp T ON N.JoinID = T.ID

看看这个 SQLFiddle

于 2013-07-20T06:34:00.283 回答