2012-11-06 124 views
1

你好,我想從一個SELECT查詢插入與選擇

insert into (cmts) stat_alert 
values(SELECT stat_alert.cell,stat_alert.cmts,cell_cmt.cmts FROM stat_alert`LEFT OUTER JOIN cell_cmt ON cell_cmt.`cell`=stat_alert.cell WHERE stat_alert.`cell`=cell_cmt.cell) 

插入一列中的值我有語法錯誤 誰可以幫我?

回答

3

你不需要VALUES關鍵字和圓括號:

INSERT INTO <table name> (<comma separated column list>) 
SELECT <comma separated column list> FROM <table name> 

閱讀INSERT ... SELECT syntax from the manual

1

你想用INSERT INTO otherTable (cols) SELECT <yourColumns> FROM <yourtable>INSERT INTO ... VALUES()

insert into stat_alert (cmts) -- list your columns here to insert into 
SELECT cell_cmt.cmts -- your values to be inserted are here 
FROM stat_alert 
LEFT OUTER JOIN cell_cmt 
    ON cell_cmt.`cell`=stat_alert.cell 
WHERE stat_alert.`cell`=cell_cmt.cell 
+0

語法錯誤:( – user1794019

+0

@ user1794019什麼錯誤?什麼是stat_alert'的'表結構? – Taryn

+0

其作品:)謝謝INSERT INTO stat_alert(CMTS) SELECT cell_cmt.cmts FROM stat_alert LEFT OUTER JOIN cell_cmt ON cell_cmt.'cell' = stat_alert.cell WHERE stat_alert.'cell' = cell_cmt.cell – user1794019

0

它看起來像您有:

  1. 表名前的列列表
  2. 一列插入,但三列選擇
  3. A values關鍵字當這種查詢中不需要任何關鍵字時。
+0

感謝您的作品:) – user1794019

+0

INSERT INTO stat_alert(CMTS) SELECT cell_cmt.cmts FROM stat_alert LEFT OUTER JOIN cell_cmt ON cell_cmt.'cell' = stat_alert.cell WHERE stat_alert.'cell' = cell_cmt.cell – user1794019