這是本人在開發過程中遇到的高效且常用的mysql高階用法。
使用場景:例如
test_a表有a_id,x,y,z欄位
test_b表有b_id,o,p,q欄位
現在需要從test_a表中select x, y, z欄位來update test_b set o = x, y=p, z = q where a_id = b_id
//效率低的方式:
update test_b as b set
b.o =
(select a.x from test_a as a where a.a_id = b.b_id)
,b.p =
(select a.y from test_a as a where a.a_id = b.b_id)
,b.q =
(select a.z from test_a as a where a.a_id = b.b_id)
,//效率高的方式:
update test_b b inner join test_a a on a.a_id = b.b_id
set b.o = a.x, b.p = a.y, b.q = a.z
on duplicate的用法
insert into table_a a (id, field)
values
('***'
,'yyy'
) on duplicate key update field =
'yyy'
;
個人近況小結
個人近況小結 工作語言 日常工作還是php lamp 主要是用thinkphp dwz做些管理系統,zend framework 和yii也有用到 目前進度是 django基本上手,webpy和flask還沒來得及做實踐專案練手 近期目標 把自己的工作圈在了web 的lamp領域,學習linux伺服...
個人階段小結
typedef void context int main 標頭檔案 include 函式原型 int pthread mutex init pthread mutex t restrict mutex,const pthread mutexattr t restrict attr pthread ...
個人近況小結
個人近況小結 工作語言 日常工作還是php lamp 主要是用thinkphp dwz做些管理系統,zend framework 和yii也有用到 目前進度是 django基本上手,webpy和flask還沒來得及做實踐專案練手 django dwz 整理專案見 目前僅有新聞管理和相片管理兩個小功能...