1樓:匿名使用者
你的題目夠繞的。不知道我有沒有理解錯誤。我是這樣理解的。
table_a
a bx y
x1 y1
table_b
a by xy1 x1
把table_a的a列的值替換成table_b的a列的值。對嗎?建議問問題的時候把問題說清楚。
另外:執行我的語句的時候備份一下資料,以防理解出錯導致不良後果。
update table_a set a=(select table_b.a from table_b where table_a.a=table_b.b)
*************************
對著你的例子思索良久,發現原來目的是這樣的2個任務。
(1)表1 a列與表2 b列相同 把錶1的b列替換成表2的a列
(2)表1 a列與表2 b列不相同 把錶1的a列替換成表2的b列
任務1可以用以後語句完成
update table_a,table_b set table_a.b= table_b.a where table_a.a=table_b.b
但任務2沒有辦法完成。因為這兩個關係字段沒有第三方規則約束由表2的第某行替換表1的第某行。
換句話說,原資料如下:
a b a b
04 44 04 4
05 55 05 5
沒有規則說表1 a列的04要由 表2 b列的4來替代,因為5也是可選項。對吧。
**********=
建議使用程式來維護兩表關係。我想要簡單的多。
***************==
主要是2個表中相同的資料找出來,以表2為條件,替換表1中b列的項,謝謝大師,幫幫我把!~~
**********==
那不就是我第二次回答的任務1麼?
任務1可以用以後語句完成
update table_a,table_b set table_a.b= table_b.a where table_a.a=table_b.b
2樓:匿名使用者
update table1 set table1.a = (select table2.a from table2 where table2.b = table1.a)
mysql語句優化,mysql 語句優化
從句子中可以看到,選取的字段比較多,另外連線條件也比較多,另外還包括了子查詢。就此語句給出幾個需要注意的問題 1 請先使用explain,對這個語句進行分析,explain解釋select命令如何被處理。這不僅對決定是否應該增加乙個索引,而且對決定乙個複雜的join如何被mysql處理都是有幫助的。...
mysql中count的用法,MySQL中count的用法
count 函式返回匹配指定條件的行數 count column name 函式返回指定列的值的數目 null 不計入 我們擁有下列 orders 表 o id orderdate orderprice customer 1 2008 12 29 1000 bush 2 2008 11 23 160...
mysql裡面的ENUM函式,mysql中enum型別怎麼設定
根據使用者定義的列舉值與分片節點對映檔案,直接定位目標分片。使用者在rule.xml中配置列舉值檔案路徑和分片索引是字串還是數字,dble在啟動時會將列舉值檔案載入到記憶體中,形成乙個對映表 在dble的執行過程中,使用者訪問使用這個演算法的表時,where子句中的分片索引值會被提取出來,直接查對映...