搜尋

首頁  >  問答  >  主體

標題重寫為:將"(SELECT & VALUES)一起插入"的英文翻譯

<p>我正在嘗試向表中插入數據,我知道兩種方法:</p> <p>一種是將行作為值加:</p> <pre class="brush:php;toolbar:false;">INSERT INTO db_example.tab_example (id,name,surname,group) VALUES ('','Tom','Hanks','1');</pre> <p>另一種是從另一個表格插入:</p> <pre class="brush:php;toolbar:false;">INSERT INTO db_example.tab_example (id,name,surname) SELECT ID,first_name,last_name FROM db_contacts.tab_mygroup;</pre> <p>但是如果我想同時從另一個表中插入一些值(第二種方法),以及手動插入一些預設值(第一種方法),該怎麼辦呢。 </p> <p>這是我嘗試過的(但沒有成功):</p> <pre class="brush:php;toolbar:false;">INSERT INTO db_example.tab_example (id,name,surname,group) VALUES ( SELECT ID FROM db_contacts.tab_mygroup, SELECT first_name FROM db_contacts.tab_mygroup, SELECT last_name FROM db_contacts.tab_mygroup, '1' );</pre> <p>我考慮創建一個視圖表,這可能可以解決問題,但我想可能有一種方法可以同時添加兩者。 </p> <p>謝謝大家!希望我描述清楚了我需要什麼 :)</p>
P粉536532781P粉536532781527 天前584

全部回覆(2)我來回復

  • P粉980815259

    P粉9808152592023-08-25 14:47:08

    試試這個

    INSERT INTO db_example.tab_example (id,name,surname)
    SELECT id,first_name,'M. Nega'
    FROM db_contacts.tab_mygroup

    你可以在FROM子句中使用join。它應該可以工作!

    回覆
    0
  • P粉373596828

    P粉3735968282023-08-25 11:19:31

    只需從SELECT語句中傳回字面值;在SELECT清單中加入一個表達式。例如:

    INSERT INTO db_example.tab_example (id,name,surname,group)
    SELECT ID
         , first_name
         , last_name
         , '1' AS group
      FROM db_contacts.tab_mygroup;

    後續

    問:我可以使用AS函數在同一列中選擇first_name和last_name嗎?還是需要另一個函數?

    答案:如果您想要將first_namelast_name的值合併到單一列中,您可以使用表達式將它們連接起來,並在SELECT清單中使用此表達式,例如

    CONCAT(last_name,', ',first_name')

    CONCAT(first_name,' ',last_name)

    AS關鍵字在INSERT ... SELECT的上下文中不會產生任何效果,但為該表達式分配一個與被插入的列的名稱相符的別名可以幫助未來的讀者。

    INSERT INTO db_example.tab_example (id,name,surname,group,full_name)
    SELECT ID
         , first_name
         , last_name
         , '1' AS group
         , CONCAT(first_name,' ',last_name) AS full_name
      FROM db_contacts.tab_mygroup

    回覆
    0
  • 取消回覆