Sql開發技巧

2021-09-06 19:50:05 字數 1037 閱讀 6700

原文:

sql開發技巧

簡介 分頁

主要是使用了row_number()這個函式。一般如下:

declare @pagesize int;

declare @startindex int;

with mytable_paged as(

select

row_number() over(order by col_1) as '',

*from

mytalbe

where

condition

)select * from mytable_paged

where rownumber between startindex and startindex+@pagesize-1

事務

這個在複雜的sql語句中經常用,尤其配合儲存過程。能夠使乙個操作原子化,防止只執行部分的操作。(當乙個存在過程在執行的時候,是一條一條語句執行的,當出現錯誤的時候回停止執行,但是如果前面已經執行了一些語句,那麼沒有事務機制的話,該執行不能夠回滾。)

begin try

begin tran

sqlstatement

commit tran

end try

begin catch

rollback tran

end catch

根據條件刷選記錄

這個技巧在於當某乙個條件可用可不用的情況下,不必使用眾多的if等條件選擇語句

比如需要篩選的條件如下:name,phone,email

select * from mytalbe where 

([name]=@name or @name is null)

and (phone=@phone or @phone is null)

and (email=@email or @email is null)

sql開發技巧

一 常用sql語句型別 1 ddl 資料定義語言 create語句 alter語句等 2 tpl 事物處理語言 3 dcl 資料控制語言 4 dml 資料操作語言 select update insert delete 二 join連線 1 內連線 inner join 2 全外連線 full ou...

SQL恢復技巧

ms sql server資料恢復使用技巧 經常使用sql server的人都知道,有時資料庫會出現各種各樣的錯誤,比如 其他都正常,唯獨某乙個表看不到資料,或者這個表看的到資料,但是不能根據某個字段排序,只要一執行排序語句,就提示 連線中斷 等等。一般這些單個表出現錯誤的ms提供了乙個修復語句,d...

sql優化技巧

1.比較運算子能用 就不用 增加了索引的使用機率 2.事先知道只有一條查詢結果時,使用 limit 1 limit 1 可以避免全表掃瞄,找到對應結果就不會再繼續掃瞄了 3.選擇合適的資料型別很重要 能用tinyint就不用smallint,能用smallint就不用int,磁碟和記憶體消耗越小越好...