一、常用sql語句型別
1、ddl 資料定義語言 (create語句 alter語句等)
2、tpl 事物處理語言
3、dcl 資料控制語言
4、dml 資料操作語言(select 、update 、insert 、 delete)
二、join連線
1、內連線 inner join
2、全外連線 full outer join
3、左外連線 left outer join
4、右外連線 right outer join
5、交叉連線 cross join
前面4中都需要on來作為條件 cross連線不需要on作為條件 查詢的結果是笛卡爾積 即兩個表的資料相乘
三、不能更新在from從句中出現的表的資料
update user1 set over ='1111' where user1.username in (select b.username from user1 a join user2 b on a.username =b.username );
此句會報1093錯誤 error 1093 (hy000)
此句應該改為:
update user1 a join ( select b.username from user1 a join user2 b on a.username =b.username ) b on a.username =b.username set a.over ='1111'
四、子查詢效率一般要低於連線查詢效率,並且資料量越大,效果月明顯
----子查詢:select a.user_name ,a.over ,(select over from user2 b where a.user_name = b.user_name ) as over 2 from user1 a;
--連線查詢:select a.user_name ,a.over ,b.over as over2 from user1 a left join user2 b on a.user_name = b.user_name;
五、結果集行轉列的幾種方式
1、cross join
2、case when
Sql開發技巧
原文 sql開發技巧 簡介 分頁 主要是使用了row number 這個函式。一般如下 declare pagesize int declare startindex int with mytable paged as select row number over order by col 1 as...
SQL恢復技巧
ms sql server資料恢復使用技巧 經常使用sql server的人都知道,有時資料庫會出現各種各樣的錯誤,比如 其他都正常,唯獨某乙個表看不到資料,或者這個表看的到資料,但是不能根據某個字段排序,只要一執行排序語句,就提示 連線中斷 等等。一般這些單個表出現錯誤的ms提供了乙個修復語句,d...
sql優化技巧
1.比較運算子能用 就不用 增加了索引的使用機率 2.事先知道只有一條查詢結果時,使用 limit 1 limit 1 可以避免全表掃瞄,找到對應結果就不會再繼續掃瞄了 3.選擇合適的資料型別很重要 能用tinyint就不用smallint,能用smallint就不用int,磁碟和記憶體消耗越小越好...