GROUP и ORDER Mysql получают разные данные в столбце - PullRequest
0 голосов
/ 07 декабря 2018

это все данные из текущей таблицы

SELECT
  id,harga,kode_tahun_ajaran
FROM
  tblharga
+----+---------+-------------------+
| id | harga   | kode_tahun_ajaran |
+----+---------+-------------------+
|  1 |  400000 | THN2018/2019      |
|  2 |   50000 | THN2018/2019      |
|  3 | 1000000 | THN2018/2019      |
|  4 |  900000 | THN2018/2019      |
|  5 |  500000 | THN2017/2018      |
|  6 |  600000 | THN2018/2019      |
+----+---------+-------------------+

, и я запускаю этот код, чтобы получить последние harga с группировкой kode_tahun_ajaran

  SELECT
    id,harga,kode_tahun_ajaran
  FROM
    tblharga
  GROUP BY
    kode_tahun_ajaran
  ORDER BY id DESC
+----+--------+-------------------+
| id | harga  | kode_tahun_ajaran |
+----+--------+-------------------+
|  5 | 500000 | THN2017/2018      |
|  1 | 400000 | THN2018/2019      |
+----+--------+-------------------+

столбец harga должен взять последние данные, которые равны 600000 из-за порядка код.

как я могу получить последние данные, сгруппировав их другим способом?заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018
select id,S.kode_tahun_ajaran,harga
from tblharga S inner join
( select kode_tahun_ajaran,max(id) maxid from tblharga group by kode_tahun_ajaran) T
where T.kode_tahun_ajaran=S.kode_tahun_ajaran and maxid=id;
0 голосов
/ 07 декабря 2018

Вы можете попробовать ниже

SELECT
    id,harga,kode_tahun_ajaran
  FROM
    tblharga where id in (select max(id) from tblharga group by kode_tahun_ajaran)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...