sql2019 top為引數怎麼做

2022-06-13 09:57:29 字數 3253 閱讀 9694

1樓:匿名使用者

比如:有一張橫表a,表中有字段:鎮局area,manager客戶經理,custmer 客戶,talk_no通話次數

每個鎮下面有多個客戶經理,每個客戶經理管理多個客戶,每個客戶有各自的通話次數

那麼如果想要取出每個客戶經理下面通話次數前5個的客戶,應該怎麼寫sql呢?

解:select area 區域,manager 客戶經理,custmer 客戶,talk_no 通話次數

from (

select area,manager,customer,talk_no,

dense_rank() over (partition by manager order by talk_no desc) rank_no

) where rank_no <= 5;

幫頂,是oracle的,找高手幫你轉下

2樓:

/*declare @num int

set @num =10

select top (@num) id from test*/declare @num int

set @num =10

declare @sqlstr nvarchar(200)select @sqlstr = 'select top ('+cast(@num as varchar(10)) + ') id from test '

exec(@sqlstr)

sql 2000 top 變數

3樓:匿名使用者

加個括號就可以了,因為2000 不支援這樣的寫法,或加這個也可以試下

4樓:匿名使用者

啥意思哦 沒懂 但是 至少 你後面沒排序 你得不到id值靠前的行

select @id=max(id) from sendconfig where id in (select top @i id from sendconfig order by id desc )

5樓:天涯海峰

在sql2000中top後是不能接變數的,變數只有特殊的處理

例如:品字串,你寫的這些我還沒有看清楚

6樓:匿名使用者

declare @sql nvarchar(500)

set @sql = 'select top ' + cast(@i as varchar(5)) + ' id from dde'

exec(@sql)

7樓:

2000可以用sp_executesql這個常用的系統儲存過程,記住引數都要nvarchar

declare @id int,@i int,@sql nvarchar(4000)

set @sql='select @id = max(id) from dde where id in (select top ' + convert(varchar,@i) + ' id from dde)'

exec sp_executesql @sql,n'@id int output',@id output

sql 中top中的變數為count()解決辦法

8樓:頻餘泣曾琪

支援一下感覺挺不錯的

sql語句的top用法

9樓:匿名使用者

select top 1 * from table

select top (1+2) * from table/*取前3行資料*/

區別就是()裡面可以是個表示式

10樓:

沒有區別個人的習慣 在sqlserver2000中top後只可以跟常數,在2005後可以跟變數了

也許唯一的區別就是top(expression)括號中可以跟表示式

11樓:匿名使用者

肯定不能加括號的,因為加了的話肯定會出這個錯誤:

'(' 附近有語法錯誤。

。。。。。

12樓:匿名使用者

加括號就報錯了

不知道您說的是不是

select top 5 [uid] from xm中括號是為了遵循**規範

13樓:匿名使用者

select top 1 * from table_name

不能加括號吧

14樓:土豆妞兒

'(' 附近有語法錯誤。

15樓:世賢_斌

top在sql server中最新的來語法是要自加括號的。

1、在select後面跟的是數字bai

的時候,它du是可以不用加括號的,

zhi但是從語法嚴謹來dao講還是應該加上括號的;如果select後面跟的是表示式,那是一定要加括號了。

2、update的時候,必須要加括號,否則會報錯。

3、delete的時候,必須要加括號,否則會報錯。

關於sql儲存過程的問題,帶top引數的儲存過程

16樓:匿名使用者

sql2005版本以上可以使用top變數,格式是top(@x)

17樓:凸b男撥完

儲存過程就像是乙個小的程式一樣,是程式都會有執行步驟,如果你這樣寫,那再加上乙個判斷或者加上乙個迴圈呢?那你會寫成什麼樣子呢?而執行的時候,程式還沒有智慧型到遇到你寫select就知道你是要查詢,只有你執行了查詢語句程式才會知道你是要查詢。

所以你set之後,也只是給@str賦值而已,還沒有執行查詢。

搞不明白你怎麼會這麼想,或者說這是誰教你的,能把這種問題給教出來了。。

18樓:

select top(@x) 只能在sql2005及以上版本才支援。

sql儲存過程 top 後面跟變數後 顯示的結果就是語句 10

19樓:

改成使用top函式就可以使用變數了, 效果與top子句相同, 格式:

select top(@i) ...

20樓:匿名使用者

你的複語法制寫錯了,改成 select top 1 @i,id from sysobjects where type = 'u' and name like 'callhm%' order by id asc)

3Dmax2019的vray燈光引數為什麼調不了

因為vary燈光操作面板的 選項 裡 天光入口 去除勾選就可以了 把天光入口勾選去掉就好了。3d studio max,常簡稱為3d max 或3ds max,是 discreet公司 開發的 後被 autodesk公司合內並 基於pc系統的三容維動畫渲染和製作軟體。3d max廣泛應用於廣告 影視...

sql 2019 R2安裝時,怎麼選擇服務賬戶

基本上你選擇system這個賬戶就可以的,我都是全部選擇這個賬戶的。sql2008安裝時,怎麼選擇服務賬戶 nt authority system 系統內建賬號,對本地系統擁有完全控制許可權 在工作組模式下,該賬戶不能網路資源 通常用於服務的執行,不需要密碼。nt authority network...

怎麼用SQL語句修改數值為保留兩位小數

1 建立測試表,create table test replace num id number,value number 2 插入測試資料 insert into test replace num values 1,4.9528 insert into test replace num values...