0
我在SQL Server數據庫中有兩個表,其中一個包含已發佈的字母和一個以電子方式發送的文檔。從一列中唯一的兩個SQL Server表中添加記錄
CREATE TABLE [dbo].[DocumentTransmission]
(
[PatientNumber] [varchar](50) NULL,
[Filename] [varchar](512) NOT NULL,
[TransmittedDateTime] [datetime2](3) NULL,
[GPCode] [varchar](50) NULL,
[PracticeCode] [varchar](50) NULL,
[MessageSource] [varchar](50) NULL,
[Status] [varchar](50) NULL,
[EmailAddress] [varchar](64) NULL,
[DateTimeAdded] [datetime2](3) NULL
) ON [PRIMARY]
其他表稱爲DocumentPrint
我需要能夠從DocumentTransmission
選擇記錄,只有那些從DocumentPrint
其中Filename
確實不出現在DocumentTransmission
- 我似乎無法到弄清楚如何快速做到這一點 - 我的例程會讓數據庫管理員哭,因爲它太慢了 - 你會如何推薦這樣做。
聽起來像一個左連接到我 – jbutler483 2014-11-04 16:29:55
[見這裏](http://2.bp.blogspot.com/-sPPmxWgcl_I/UmrMDwV5EhI/AAAAAAAAAHU/fFApXiKcHwg/s1600/sqljoins.jpg) – jbutler483 2014-11-04 16:36:03
你的意思是你想做這樣的事情'SELECT * FROM DocumentTransmission UNION SELECT * FROM DocumentPrint WHERE Filename NOT IN(SELECT FileName FROM DocumentTransmission)'?如果是這樣,由於您正在比較兩個非常長的「VARCHAR」列,因此很難加快速度。 – ForguesR 2014-11-04 16:39:02