-
join優(yōu)化子查詢技巧: 一般子查詢寫法:(數(shù)據(jù)小時(shí),沒有多大影響,如果數(shù)據(jù)量大時(shí),則要消耗大量的查詢) select a.user_name , a.over , (select over from user2 where a.user_name = b,user_name) as over2 from user1 a; 如果這兩張表的記錄相當(dāng)多 那么這個(gè)子查詢相當(dāng)于對(duì)A標(biāo)的每一條記錄都要進(jìn)行一次子查詢。 join優(yōu)化(左連接)后的寫法: select a.user_name , a.over , b.over from user1 a left join user2 b on a.user_name = b.user_name查看全部
-
update user1 set over='齊天大圣' where user1.user_name in ( select b.user_name from user1 a join user2 b on a.user_name = b.user_name); ERROR 1093錯(cuò)誤 不能更新from語句中出現(xiàn)的表字段 解決辦法: 通過使用join進(jìn)行聯(lián)合更新 update user1 a join (select b.user_name from user1 a join user2 b on a.user_name = b.user_name) b on a.user_name = b.user_name set a.over = '齊天大圣';查看全部
-
交叉連接cross join eg: select * from user1 a cross join user2 交叉連接不需要添加on條件從句查看全部
-
MySQL中不會(huì)支持full join 解決方法:采用左連接和右連接結(jié)合+ union方法來取得兩表的合集 select a.user_name , a.over , b.over from user1 a left join user2 b on a.user_name = b.user_name union select b.user_name , b.over, a.over from user1 a right join user2 b on a.user_name = b.user_name查看全部
-
右連接right outer join查看全部
-
左外連接left outer join查看全部
-
join從句:: inner | full outer | left outer | right outer | cross 內(nèi)連接inner join: select a.user_name,a.over,b.over from user1 a join user2 b on a.user_name=b.user_name;查看全部
-
DDL:數(shù)據(jù)定義語言 --- CREATE、ALTER、DROP、TRUNCATE TPL:事務(wù)處理語言 --- COMMIT、ROLLBACK、SAVEPOINT、SET TRANSACTION DCL:數(shù)據(jù)控制語言 --- GRANT、REVOKE DML:數(shù)據(jù)操作語言 --- SELECT、UPDATE、INSERT、DELETE查看全部
-
分組選擇查看全部
-
使用join,聯(lián)合更新來解決問題,更新自身表查看全部
-
正常情況下,不能更新from從句中的表。查看全部
-
cross join可以不需要on從句查看全部
-
cross join查看全部
-
mysql不支持full join。通過這種方式可以達(dá)到full join的效果查看全部
-
全連接可達(dá)到的效果查看全部
舉報(bào)
0/150
提交
取消