【问题标题】:How to check missing number in some column如何检查某些列中缺少的数字
【发布时间】:2019-12-27 11:23:27
【问题描述】:

我使用Mysql和spring data jpa

我对如何查找某些列的缺失数据有疑问

该列属性是 int。

所以,如果我在某个数据列中插入一些数据。

数字表

seq | number | sometext | someData | something | some | some

当我像这样插入数据时。

1 0 sometext someData  something some some,

2 2 sometext someData  something some some,

3 3 sometext someData  something some some,

4 5 sometext someData  something some some,

5 10 sometext someData  something some some,

如何获取我缺少的数字列

在 spring data jpa 原生查询中。

【问题讨论】:

  • 您的示例中缺少什么数字?
  • 缺少 1,4,6,7,8,9

标签: mysql spring-data-jpa hibernate-native-query


【解决方案1】:

这个查询怎么样

SELECT   CONCAT(X.EXPECTED, IF(X.GOT-1>X.EXPECTED, CONCAT(' ~ ',X.GOT-1), '')) AS MISSING
FROM     (
         SELECT
                  @ROWNUM:=@ROWNUM+1 AS EXPECTED,
                  IF(@ROWNUM=B.number , 0, @ROWNUM:=B.number ) AS GOT
         FROM     (SELECT @ROWNUM:=0) AS A
                  INNER JOIN YOUR_TABELE B
         ORDER BY B.number 
         ) AS X
WHERE X.GOT!=0;

【讨论】:

  • 谢谢你酸溜溜的回答但是mysql可以这个查询但是我不能使用jpa原生查询你知道如何在spring data jpa中使用那个Queryuu
  • 嗯,我不知道如何使用 jpa 原生查询。对不起
  • 也许使用这个@ROWNUM \\:=
  • 出现错误无法执行查询;以及为什么 jpa 找不到列“序列”
猜你喜欢
  • 1970-01-01
  • 2020-11-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-05-17
  • 1970-01-01
  • 1970-01-01
  • 2021-08-09
相关资源
最近更新 更多