2014-09-02 50 views
1

一個字段SQL插入多個值,我有一個表稱爲消息,並呼籲客戶與子查詢

我想插入在消息表中的新郵件在客戶表中的每個客戶ID的表。 我寫了下面的查詢

INSERT INTO MESSAGES 
(
ID, 
VERSION, 
CUSTOMERID, 
SERVICE, 
CREATED_BY, 
MESSAGE 
) 
VALUES 
(
NEWID(), 
'1', 
SELECT id FROM customer, 
null, 
'test', 
'test') 

,但我得到的錯誤

子查詢返回多個值。當子查詢遵循=,!=,<,< =,>,> =或當子查詢用作表達式時,這是不允許的。 任何想法?

+0

我想補充的是,我只需要從客戶表中的CUSTOMER_ID並沒有其他數據 – user598347 2014-09-02 07:29:16

回答

2

不可能的,試試這個:

INSERT INTO MESSAGES 
(ID, VERSION, CUSTOMERID, SERVICE, CREATED_BY, MESSAGE) 
SELECT NEWID(), '1', id, null, 'test', 'test' 
FROM customer 

通過這種方式,你可以在你的信息表中插入所有客戶行

+0

我只想要客戶的ID?這仍然有效嗎? – user598347 2014-09-02 07:22:06

+0

INSERT和SELECT中的字段編號必須相同。在CUSTOMER表中的查詢中,您只會獲得ID字段,其他則是常量 – 2014-09-02 07:38:36