H_jsen
2017-06-13 08:54
采纳率: 48.6%
浏览 2.0k

mysql筛选出字段重复数据?

图片说明

如上图中的mysql表中的数据。如何筛选出datetime字段在4月份内跟datetime字段不包含4月份内,name字段和region字段相同的数据,即4月份中某个数据name为"AA",region为"东莞",跟不是在4月份内的某个数据name为"AA",region为"东莞,视为相同,求问SQL语句改如何写?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 朱明明啊 2017-06-13 09:58

    我先说下思路啊,,查询4月内的为一张表a,4月外的为一张表b,然后外联结 条件是a.name=b.name and a.region=b.region 查出来的数据给表c 然后where b.name 不为空,c.name不为空

    select c.* from(
    (select * from table where datetime between to_date('2017-04-01' , 'yyyy-mm-dd ') and to_date('2017-04-30' , 'yyyy-mm-dd hh24:mi:ss')) a
    left join
    (select name name1,region region1 from table where datetime to_date('2017-04-30' , 'yyyy-mm-dd hh24:mi:ss')) b
    on a.name=b,name and a.region=b.region) c
    where name1 in not null and region1 not null

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题