求一个SQL语句,条件如下

天降扫把星 2014-05-13 02:51:47
数据如:主键略了
字段1 字段2 字段3 字段4
a b c d
a c b b
a b c c
a c c c
a b b b

现在我需要把字段1和字段2相同的数据拿出来处理,类似合并账单的操作,需要处理的数据为整个表格

如果先把数据都查出来拿到程序里处理,会产生很多循环,就想着在数据源这边先分类。求前辈指教
...全文
126 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
天降扫把星 2014-05-13
  • 打赏
  • 举报
回复
我想到了一点。先用 SELECT t.type,t.status,COUNT(*) FROM test_order t GROUP BY t.type , t.status 这样就知道有哪几种单据头。type,status相同的单据就查出来了,得到一个list 然后循环list查询数据库,就得到了行。 我的描述导致大家对我的需求不是很了解。
天降扫把星 2014-05-13
  • 打赏
  • 举报
回复
引用 6 楼 ACMAIN_CHM 的回复:
select * from table1 order by 字段1,字段2
谢谢你的回复。 这样都查出来,然后给程序处理,循环没那么复杂了。
天降扫把星 2014-05-13
  • 打赏
  • 举报
回复
引用 4 楼 wwwwb 的回复:
select * from tt a where exists(select 1 from tt where a.f1=f1 and a.f2=f2 and a.id<>id) order by f1,f2
谢谢您的回复。其实我觉得一条sql是查不出来的,结果就好像很多个List一样,每个list里的数据 字段1 字段2 相同是他们的共性
ACMAIN_CHM 2014-05-13
  • 打赏
  • 举报
回复
select * from table1 order by 字段1,字段2
天降扫把星 2014-05-13
  • 打赏
  • 举报
回复
生成表格只是个比喻,因为还有很多字段通过其他途径赋值,现在需要的是把 1,3,5 和 2,4 分别查询出来给List由程序处理 不知道说明白了没
wwwwb 2014-05-13
  • 打赏
  • 举报
回复
select * from tt a where exists(select 1 from tt where a.f1=f1 and a.f2=f2 and a.id<>id) order by f1,f2
天降扫把星 2014-05-13
  • 打赏
  • 举报
回复
引用 1 楼 benluobobo 的回复:
给出例子数据,给出需要的结果 方便他人为你正确解决问题
引用 2 楼 wwwwb 的回复:
要求结果是什么,表中有无唯一标识的字段,假设有 select * from tt a where exists(select 1 from tt where a.f1=f1 and a.f2=f2 and a.id<>id)
sorry,我没写清楚。在这里补充下。 字段1 字段2 字段3 字段4 1 a b c d 2 a c b b 3 a b c c 4 a c c c 5 a b b b 这是5条数据 我需要的是经过查询,可以返回数据,第一次返回 1,3,5,因为他们的字段1和字段2是一样的。 第二次返回2,4 就类似这个表格是订单行项目,需要整理整个表格,将字段1和字段2相同的数据查出来。再由程序处理成订单合并 不知道描述清楚了没,是整理这个表格,生成两个表格的意思。把行项目和头分开
wwwwb 2014-05-13
  • 打赏
  • 举报
回复
要求结果是什么,表中有无唯一标识的字段,假设有 select * from tt a where exists(select 1 from tt where a.f1=f1 and a.f2=f2 and a.id<>id)
benluobo 2014-05-13
  • 打赏
  • 举报
回复
给出例子数据,给出需要的结果 方便他人为你正确解决问题

56,940

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧