簡單的乙個sql表遍歷
一般我們寫儲存過程或者其他sql語句的時候都會用到迴圈遍歷資料,最常用的兩種就是
1、游標
2、臨時表+while
下面貼出示例**
declare @minrelogid int--這裡的 minrelogid 一般都是表中的主鍵
select top 1 @minrelogid= min(pkid) from apsi_orderreplacelog --找出最小的主鍵 (pkid 為主鍵)
while(@minrelogid is not null )
begin
--主要的業務邏輯
select top 1 @minrelogid= min(pkid) from apsi_orderreplacelog and pkid>@minrelogid--最關鍵的一步 找出下乙個最小的主鍵
end
這中找最小值遍歷的方式,**較簡潔,我比較喜歡用這種,就是不知道這種和其他兩種對比 有什麼缺點,還望各位大佬們指點。
乙個簡單的sql
declare wokno varchar 500 用來記錄職工號 declare str nvarchar 4000 用來存放查詢語句 declare count int 求出總記錄數 declare i int set i 0 select count count distinct wokno ...
乙個簡單的SQL題
很久沒寫日誌了啊.唉.可能是自己比較懶吧.找工作呢.不怎麼想找.前幾天去南京一家軟體公司筆試.遇到了乙個沒見過的sql題.題目是這樣的.一表中有a b c三列,寫乙個sql語句,條件是如果a大於b則返回a,否則返回b 如果b大於c則返回b,否則返回c。本來以為自己對sql語句已經了解的很多了.呵呵....
乙個簡單遍歷的演算法優化
include include define n 100000 int main int number 0,temp1,temp2 for number 1 number剛開始以為這已經算行了,但是在想了想過後,若是不是求加100再加168等等呢,萬一要求的範圍是一億呢?如果還是使用遍歷無疑這個程式...