我有以下SQL。我試圖將ClientName
從Clients
插入CommisionPickups
的pName
列。我需要確保所有的值都是唯一的。將一個表中的值插入另一個表中
insert into CommisionPickups (pName)
(select ClientName
from Clients
where ClientName <> CommisionPickups.pName)
我有以下SQL。我試圖將ClientName
從Clients
插入CommisionPickups
的pName
列。我需要確保所有的值都是唯一的。將一個表中的值插入另一個表中
insert into CommisionPickups (pName)
(select ClientName
from Clients
where ClientName <> CommisionPickups.pName)
您不能使用<>
來檢查唯一性。爲確保所有名稱都是唯一的,您需要確保從CommisionPickups
中選擇唯一名稱,並且您插入的名稱不存在於Clients
中。使用NOT EXISTS
爲CommisionPickups
,並DISTINCT
爲Clients
,像這樣:
insert into CommisionPickups (pName)
(select DISTINCT c.ClientName from Clients c
where NOT EXISTS (SELECT 1 FROM CommisionPickups cp
WHERE c.ClientName = cp.pName)
)
我不能夠得到您的問題,但我理解部分可能是你問的這個
如果要插入在遙遠的價值PNAME不是讓PNAME獨一無二它會自動工作 並選擇
select DISTINCT ClientName from Clients
看看這個U可以得到
這裏是實現它的一種方法。我在SQL Server的工作,但我希望它會爲任何數據庫引擎
INSERT INTO CommisionPickups (pName)
SELECT DISTINCT
ClientName
FROM Client
WHERE ClientName NOT IN (SELECT DISTINCT
pName
FROM CommisionPickups)
我需要從CLIENTNAME字段從客戶表,該表是不是已經在PNAME田野上CommisionPickups表複製所有工作日期。您建議的方式只會從客戶表中選擇唯一或不同的值。 – w3n2u 2013-04-09 10:50:20