gpt4 book ai didi

java - 将SQL语句转换为mySQL存储过程

转载 作者:可可西里 更新时间:2023-11-01 07:08:31 26 4
gpt4 key购买 nike

我有一段 SQL 可以计算出高尔夫球手在排行榜上的排名。我是 Spring 的新手,我认为我无法使用 Spring JDBC 执行此操作,因此我认为我需要将其转换为 mySQL 存储过程。

谁能给我一些关于我需要转换什么的指示?简单地放置 CREATE PROCEDURE 和围绕它的参数列表是行不通的。

SET @rank = 1, @prev_val = NULL, @prev_rank = NULL;
SELECT rank FROM
(
SELECT @rank := IF(@prev_val!=winnings,@prev_rank+1,@rank) AS rank
, @prev_val := winnings AS winnings
, @prev_rank := @rank AS prevRank
, t.golferID
FROM
(
select g.golferID, sum(winnings) as winnings
from results r
join resultDetails rd on r.resultID = rd.resultID
join golfers g on rd.golferID = g.golferID
where r.status = 'C' and r.compID = 1
group by golferID order by winnings desc
) AS t
) AS showRank WHERE golferID = 16

最佳答案

这会让你开始:

drop procedure if exists get_golfer_rank;

delimiter #

create procedure get_golfer_rank
(
p_golferID int unsigned
)
proc_main:begin

set @rank = 0;

select
...
where golferID = p_golferID;

end proc_main #

delimiter ;


call get_golfer_rank(18);

关于java - 将SQL语句转换为mySQL存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4502107/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com