ITPub博客

首页 > 数据库 > 数据库开发技术 > 如何将SQL写成复杂逻辑 和构造数据

如何将SQL写成复杂逻辑 和构造数据

原创 数据库开发技术 作者:mcxiaoracle 时间:2022-07-20 00:42:06 0 删除 编辑

首先要建立一个概念,复杂的sql语句也是最基本的sql语句连接而成,所以最重要的是先要理清思路和逻辑,弄清自己要查哪几张表,要用哪几个字段,表之间如何关联,将这些弄清,然后由简单到复杂,从最基本的sql写起,通过找共同点,实现表关联等。

0.确定表:涉及到那些表的数据

确定字段:

确定根据业务需求连接方式等。-》分类迭代, 条件聚合


1.使用基本的查询逻辑

2。多使用函数,如nvl 处理,聚集函数

nvl 处理: 只有待替换的整列值都为空(null), 才能替换成自己想要的结果值。而我的性别字段有的值为null、有的值为Male、有的值为Female,所以用NVL()函数,没有效果。


聚集函数:多用统计,均值等


3.连接方式是取对应的相同数据集可,没有为空对等关系,但是左联则是不一样,以左为主,这是我下午错的原因。

内联方式,左连方式,满连接等:

多表关系:

平级关系

等值连接必须有相同的数值,否则记录为空,从这个角度来说join 还是很有优势的。

一般的业务查询都用这个吧。

层级关系:


  1. select swjg_dm,swjg_mc,sj_swjg_dm,swjg_level
  2. from extern_dm_swjg
  3. connect by prior swjg_dm = sj_swjg_dm
  4. start with sj_swjg_dm is null

存在管理机构上下级关系的时候用



当数据都是完整的话,等值连接都是可以的,一般说来也不错,比较保险。



构造数据的方法:

主要还是分段累加,伪造数据,也么其他方法。














推荐阅读:

https://blog.csdn.net/jiahaowanhao/article/details/79581928?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-79581928-blog-120707909.pc_relevant_sortByAnswer&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-79581928-blog-120707909.pc_relevant_sortByAnswer&utm_relevant_index=5



推荐阅读:

https://blog.csdn.net/itmyhome1990/article/details/16338637










来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2906578/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: plsql use skills
下一篇: spark 的方式
请登录后发表评论 登录
全部评论
数据方向,了解oracle ,IBM DB2 730

注册时间:2019-09-30

  • 博文量
    286
  • 访问量
    226578