水煮魚 2019-08-13 18:36 采纳率: 100%
浏览 689
已采纳

jdbc中无法识别sql语句中的变量

直接执行SQL没有问题

SET @i :=- 1;
SELECT
    date_format( DATE_SUB( '2019-08-13', INTERVAL ( @i := @i + 1 ) DAY ), '%Y-%m-%d' ) AS `time` 
FROM
    changegroup 
WHERE
    @i <= 10 

但在java代码里报错,提示语法错误,希望各位码友指教,如何解决?

  • 写回答

3条回答 默认 最新

  • 葫芦胡 2019-08-14 09:05
    关注

    改成这样写:
    SELECT
    date_format( DATE_SUB( '2019-08-13', INTERVAL ( @i := @i + 1 ) DAY ), '%Y-%m-%d' ) AS time
    FROM
    changegroup ,
    (SELECT @i :=- 1) i
    WHERE
    @i <= 10

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?