【发布时间】:2015-05-11 17:20:35
【问题描述】:
我有表 produk 和 transaksi_detail
然后,我有两个问题。
第一个查询:
SELECT produk.idproduk, produk.nmproduk, COUNT(*) AS total
FROM produk, transaksi_detail
WHERE produk.idproduk=transaksi_detail.idproduk
GROUP BY produk.nmproduk
结果:
idproduk | nmproduk | total_order
-------------------------------------------
I3 coffe 6
I4 pencil 2
I1 bread 6
I2 snack 7
I5 tea 2
第二次查询:
SELECT GROUP_CONCAT(produk.idproduk) AS idproduk, transaksi_detail.idtransaksi
FROM produk, transaksi_detail
WHERE produk.idproduk=transaksi_detail.idproduk
GROUP BY transaksi_detail.idtransaksi
结果:
idproduk | idtransaction
----------------------------
I2, I1, I5 1
I2, I4 2
I2, I3 3
I2, I1, I4 4
I1, I3 5
I2, I3 7
I1, I3 8
如何使结果类似于第二个结果,但“idproduk->GROUP_CONCAT”在第一个查询中基于 total_order 排序。 像这样:
idproduk | idtransaction
----------------------------
I1, I2, I5 1
I4, I2 2
I3, I2 3
I4, I2, I1 4
I3, I1 5
I2, I3 7
I1, I3 8
“idproduk”第一个来自“I2”,因为total_order大于另一个'desc'。
【问题讨论】:
标签: mysql count group-concat