原本想隨機取出某一行資料,嘗試了兩種方法都不行
第一種
select top 1 * from table where ID in (select top n ID from table) order by ID desc;
這個本來是可以的,,但是問題是 top 后面接數字,就能獲取第 n 行資料,但是接變數就出錯
提示 statement's size limit if valid
第二種
后來查了下,又找到了 newid()
據說用 Select TOP 1 * From TABLE Order By NewID() 這一句就 可以直接得到一條隨機資料,但試了一下,發現不行,測驗了一下,得到的始終是第一條資料
我想了一下,可能是NEWID()的用法不對,或者是其它原因,希望大家幫忙解決一下。或者有不有其他方法獲得隨機某條資料。
前提是不用 資料視窗,這個也是有一定原因的。先謝過大家了哈。。
uj5u.com熱心網友回復:
long ll_idselect top 1 id into :ll_id from 我的表或我的視圖 order by newid();
通過,并且是每次不同的.
你用 * ,INTO到哪里去?
還是在DW中的?
DW最好也別用*,以后修改很難查.
uj5u.com熱心網友回復:
Select TOP 1 * From TABLE Order By NewID() 得到的是隨機一條資料uj5u.com熱心網友回復:
Select TOP 1 * From TABLE Order By NewID()
這個應該是隨機取一行數的,你那邊是不是其他原因造成的
uj5u.com熱心網友回復:
表結構是怎么定義的呢,是不是表結構的問題,我剛剛試了下,還是不行,還是只顯示第一條轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/68295.html
標籤:數據庫相關
