在資料庫操作中,經常有一些這樣的操作:插入諾乾條測試數據、查詢這個月的登錄情況(沒有登錄的日期不能不存在,要顯示數量為0),獲取諾乾條guid。 這些的基礎都是怎麼生成連續的一串數字 1 2 3 4 ……………… 100000。 在oracle中,我們使用start with connect by
在資料庫操作中,經常有一些這樣的操作:插入諾乾條測試數據、查詢這個月的登錄情況(沒有登錄的日期不能不存在,要顯示數量為0),獲取諾乾條guid。
這些的基礎都是怎麼生成連續的一串數字 1 2 3 4 ……………… 100000。
在oracle中,我們使用start with connect by
select rownum from dual start with rownum = 1 connect by rownum <= 100000
在sqlserver中,由於沒有現成的語法,我們可以採用cte
with test as ( select 1 rn union all select test.rn + 1 rn from test where test.rn <= 100000 )select rn from test
關於語法部分這裡就不詳細解釋了,相關文檔鋪天蓋地。