2010-01-30 31 views
1

有沒有一種方法可以使用條件將多個插入到一張表中?有沒有一種方法可以使用條件將多個插入到一張表中?

我有一個tbl_subscribers用戶列表。我有一個關於productX的更新,所以我希望每個訂閱productX的人都能收到通知。 user_notification表是id PK, user_id, notification_id。我需要的兩個值是product_id(productX),它允許我在tbl_subscribers中查找訂戶列表,並將notification_id插入到user_notification表中。

我怎樣才能做到這一點插入使用一個查詢?我看到你可以在sqlite http://www.sqlite.org/lang_insert.html中做select語句,但是我無法將我的頭圍繞在如何做這件事情或者看到一個例子。

回答

1
insert into user_notification(user_id, notification_id) 
select s.user_id, @notification_id 
from tbl_subscriber s 
where s.product_id = @productX 
2

我相信你從INSERT SELECT看上去這裏概述:

http://www.1keydata.com/sql/sqlinsert.html

第二種INSERT INTO允許 我們多行插入到表 。與前面的示例不同, 其中我們插入一行 指定其所有列的值, 我們現在使用SELECT語句指定 指定我們想要將 插入到表中的數據。如果你是 想着這是否意味着你 正在使用來自另一個 表的信息,那麼你是正確的。語法 如下:

INSERT INTO "table1" ("column1", "column2", ...) 
SELECT "column3", "column4", ... FROM "table2" 
相關問題