请帮帮我,如何隐藏mysql中的重复记录? 我有2张桌子: tbl_transaksi和tbl_item
tbl_transaksi
tanggal kode_item
2014-05-24 A1
2014-05-24 A2
2014-05-24 A1
2014-02-10 A4
tbl_item
kode_item nama_barang
A1 PULPEN
A2 BAJU
A3 LAPTOP
A4 DASI
A5 SEPATU
我尝试加入
select a.tanggal,b.nama_barang from tbl_transaksi a inner join tbl_item b on a.kode_item=b.kode_item order by a.tanggal asc;
结果
tanggal nama_barang
2014-02-10 DASI
2014-05-24 PULPEN
2014-05-24 BAJU
2014-05-24 PULPEN
但是,我想要这样的结果
tanggal nama_barang
2014-02-10 DASI
2014-05-24 PULPEN
BAJU
PULPEN
如何表现出来?
答案 0 :(得分:1)
您要求的四行
CREATE TABLE temp
(`id` MEDIUMINT NOT NULL AUTO_INCREMENT key,`tanggal` varchar(10), `nama_barang` varchar(6))
;
insert into temp (tanggal, nama_barang)
select a.tanggal,b.nama_barang
from tbl_transaksi a
inner join tbl_item b on a.kode_item=b.kode_item
order by a.tanggal asc;
select case when t1.tanggal=t2.tanggal then '' else t1.tanggal end tanggal, t1.nama_barang
from temp t1 left join temp t2
on t1.id-1=t2.id
drop table temp;
答案 1 :(得分:0)
试试:
select a.tanggal,Group_concat(b.nama_barang ) nama_barang
from tbl_transaksi a
inner join tbl_item b
on a.kode_item=b.kode_item
GROUP BY a.tanggal
order by a.tanggal asc;