想要在一行中获得重复的数据吗

atmip9wb  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(240)

我想在一行中得到重复的行,下面是我的表
每月出勤率

我的问题:

  1. SELECT distinct a.*
  2. FROM monthly_attendance a
  3. WHERE a.month = 9
  4. AND a.year = 2018
  5. AND a.batch in (5)
  6. AND a.student_id=257

但在多行中显示,下面是我的结果:

jhdbpxl9

jhdbpxl91#

请注意,标准化的数据集可能是这样的——当然,可能还有进一步的标准化机会。。。

  1. student_id batch roll_no ym a
  2. 257 27 2601 2018-09-00 4
  3. 257 27 2601 2018-09-00 6
  4. 257 27 2601 2018-09-00 8
  5. 257 1 2601 2018-09-00 11
  6. 257 5 2601 2018-09-00 12
  7. 257 5 2601 2018-09-00 14
  8. 257 5 2601 2018-09-00 17
  9. 257 5 2601 2018-09-00 19
svdrlsy4

svdrlsy42#

您应该使用(假)聚合函数来减少行

  1. select student_id
  2. , batch
  3. , roll_no
  4. , month
  5. , year
  6. , min(a1)
  7. , min(a2)
  8. , min(a3)
  9. , min(a4)
  10. , min(a5)
  11. , min(a6)
  12. , min(a7)
  13. , min(a8)
  14. , min(a9)
  15. , min(a10)
  16. , min(a11)
  17. , min(a12)
  18. , min(a13)
  19. , min(a14)
  20. , min(a15)
  21. , min(a16)
  22. , min(a17)
  23. , min(a18)
  24. , min(a19)
  25. from monthly_attendance a
  26. WHERE a.month = 9
  27. AND a.year = 2018
  28. AND a.batch in (5)
  29. and a.student_id=257
  30. GROUP BY student_id
  31. , batch
  32. , roll_no
  33. , month
  34. , year
展开查看全部

相关问题