在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/Java/ jdbc中無(wú)法識(shí)別sql語(yǔ)句中的變量

jdbc中無(wú)法識(shí)別sql語(yǔ)句中的變量

需求:
有一張表記錄人員的信息,現(xiàn)在想求人員年齡的中位數(shù),采用的方法為:
先將表中的年齡排序并且給排序后的年齡加上行序返回一個(gè)中間表,然后再查這個(gè)中間表,返回行號(hào)為中間值的年齡的平均值。
SQL代碼如下;

set @rowindex = 0;
select avg(temp2.age) from 
(select @rowindex:=@rowindex + 1 as rawindex,student.age as age from student order
by student.age) AS temp2 where temp2.rawindex IN (FLOOR((@rowindex+1) / 2) ,
CEIL((@rowindex+1) / 2));

問(wèn)題:
這段sql語(yǔ)句中因?yàn)楹衧ql變量@rowindex,用來(lái)記錄行序,但其在mysql中能正確返回結(jié)果,但在java代碼里報(bào)錯(cuò),提示語(yǔ)法錯(cuò)誤,希望各位碼友指教,如何解決?
1.sql中執(zhí)行的正確結(jié)果(17行紅叉不影響,因?yàn)槭?7行上面的sql導(dǎo)致的)

clipboard.png
2.java中的代碼以及報(bào)錯(cuò):

clipboard.png

JDBC連接Mysql的驅(qū)動(dòng)mysql-connector用的最新的

clipboard.png

回答
編輯回答
尛曖昧

你這實(shí)際上是多條SQL語(yǔ)句,默認(rèn)無(wú)法一次性執(zhí)行多條SQL語(yǔ)句,但好像可以修改jdbc連接設(shè)置,具體請(qǐng)度娘。

2017年5月3日 21:20