文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

分析函数改写not in

2024-04-02 19:55

关注

1.OLD:


SELECT card.c_cust_id, card.TYPE, card.n_all_money
  FROM card
 WHERE     card.c_cust_id NOT IN (SELECT c_cust_id
                                    FROM card
                                   WHERE     TYPE IN ('11',
                                                      '12',
                                                      '13',
                                                      '14')
                                         AND flag = '1')
       AND card.TYPE IN ('11',
                         '12',
                         '13',
                         '14')
       AND card.flag = 'F';


2.优化方向

(1).主查询和子查询使用的表相同,条件差不多。考虑进行合并。

(2).

使用分析函数找出相同c_cust_id 既card.flag = 'F' 也 flag = '1' 或者只满足flag = '1' 然后将这部分记录过滤掉即可。

当分组结果card.flag = 'F' 也 flag = '1'   min(flag) over(partition by card.c_cust_id) = '1'

当分组结果flag = '1'   min(flag) over(partition by card.c_cust_id) = '1'

当分组结果flag = 'F'   min(flag) over(partition by card.c_cust_id) = 'F' (需要)


select card.c_cust_id, card.TYPE, card.n_all_money
from (select card.c_cust_id,
             card.TYPE,
			 card.n_all_money,
			 min(flag) over(partition by card.c_cust_id)
	  from card
	  where card.TYPE IN ('11',
                         '12',
                         '13',
                         '14') 
		and card.flag in ('1','F'))
where card.flag = 'F';


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯