Java mySQL子查询到存储过程或JPA查询
(编辑1:不是日期,而是wc_事件日期) 我创建了一个可以完美执行的查询(带有子查询),但在将其转换为JPA查询或存储过程时遇到了困难 这是我的疑问:Java mySQL子查询到存储过程或JPA查询,java,mysql,jpa,Java,Mysql,Jpa,(编辑1:不是日期,而是wc_事件日期) 我创建了一个可以完美执行的查询(带有子查询),但在将其转换为JPA查询或存储过程时遇到了困难 这是我的疑问: SELECT * FROM wc_Event WHERE (wc_Event.date > CURRENT_DATE()) AND wc_Event.evt_id IN ( SELECT event_users.evt_id FROM event_users WHERE event_users.usr_id = 1 ) O
SELECT * FROM wc_Event WHERE (wc_Event.date > CURRENT_DATE())
AND wc_Event.evt_id IN
(
SELECT event_users.evt_id FROM event_users
WHERE event_users.usr_id = 1
)
ORDER BY wc_Event.date
我已针对存储过程尝试了以下方法:
CREATE PROCEDURE getFutureRegistredEvents
(
my_user_id int
)
BEGIN
SELECT * FROM wc_Event WHERE (wc_Event.date > CURRENT_DATE())
AND wc_Event.evt_id IN
(
SELECT event_users.evt_id FROM event_users
WHERE event_users.usr_id = my_user_id
)
ORDER BY wc_Event.date
END
它告诉我在第13行(=END)使用正确的语法,但即使我在其中添加分号,我的查询也无法工作
我还尝试用JPA查询创建相同的效果,但没有效果
我做错了什么?
提前谢谢
Bert您没有在SELECT语句的末尾添加分号。在创建存储过程时,必须更改分隔符,将其放在
分隔符//
和分隔符的末尾代码>您没有将分号放在SELECT语句的末尾。在创建存储过程时,必须更改分隔符,将其放在分隔符//
和分隔符的末尾代码>