我有一個簡單的問題,這是造成我的問題MySQL的選擇3個字符和替換
我在用mysql的名字一欄,我想通過在名稱的前三個字符替換這些。 因此,比如'Jacob' - >'Jac'。
我知道LEFT命令,它可以爲我做到這一點,但我似乎無法用輸出更新列。就像我可以做一個選擇,然後得到正確的輸出,但我不能更新與輸出:(
我試圖所需的列:
REPLACE INTO mytable(shortnames) SELECT LEFT(names,3) FROM mytable;
我有一個簡單的問題,這是造成我的問題MySQL的選擇3個字符和替換
我在用mysql的名字一欄,我想通過在名稱的前三個字符替換這些。 因此,比如'Jacob' - >'Jac'。
我知道LEFT命令,它可以爲我做到這一點,但我似乎無法用輸出更新列。就像我可以做一個選擇,然後得到正確的輸出,但我不能更新與輸出:(
我試圖所需的列:
REPLACE INTO mytable(shortnames) SELECT LEFT(names,3) FROM mytable;
我想你需要
UPDATE mytable SET names = LEFT(names,3);
非常感謝! – 12344343243
沒問題。如果它解決了您的問題,請考慮將此標記爲答案。謝謝 – kinggs
這可以用一個簡單的UPDATE查詢
UPDATE table SET names = LEFT(names,3)
做不過它可能是創建另一個關口是個好主意umn至少暫時做
UPDATE table SET short_name = LEFT(names,3)
然後要麼保留兩列或放下你不想要的列。
你當然可以保留原來的名稱是,當你只需要短版只需選擇像這樣從
SELECT LEFT(names,3) as short_name from table
感謝您的幫助! – 12344343243
我覺得這個names
列是你所需要的
UPDATE `table` SET `field` = LEFT(`field`, 3)
向我們展示select查詢和您試過的更新查詢 – RiggsFolly
'replace into'語句插入新記錄,或者在發生重複衝突的情況下,刪除舊記錄並插入新記錄。 – Shadow