Mysql 仅显示下一条记录上具有相同值的第一列
假设我有一张桌子Mysql 仅显示下一条记录上具有相同值的第一列,mysql,sql,Mysql,Sql,假设我有一张桌子 name ----------------------- phone ------------------------ address Aldi ----------------------- 021345 ----------------------- Bogor Aldi ------------------------021345 ----------------------- Jakarta John ------------------------034566
name ----------------------- phone ------------------------ address
Aldi ----------------------- 021345 ----------------------- Bogor
Aldi ------------------------021345 ----------------------- Jakarta
John ------------------------034566 ----------------------- Depok
如果第一列在下一条记录中具有相同的值,如何仅显示第一列?结果可能如下所示:
name ----------------------- phone ------------------------ address
Aldi ----------------------- 021345 ----------------------- Bogor
----------------------------------------------------------- Jakarta
John ----------------------- 034566 ----------------------- Depok
试试这个
对你的表试试这个,把它粘贴成unicode代码块,听起来你需要一个报告工具。SQL将以表格格式返回数据。顺便说一下,我需要删除
。。。和t1.phone=t2.phone
select t1.id,
case when t1.name = t2.name and t1.phone = t2.phone
then
'-'
else
t1.name
end as name,
case when t1.name = t2.name and t1.phone = t2.phone
then
'-'
else
t1.phone
end as phone,t1.address from test t1 left join test t2 on t2.id = t1.id-1
order by t1.id