1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > mysql within 函数_SQL基础----(四)复杂的子查询(select within select)

mysql within 函数_SQL基础----(四)复杂的子查询(select within select)

时间:2022-05-07 07:45:38

相关推荐

mysql within 函数_SQL基础----(四)复杂的子查询(select within select)

(一) 关键知识点

1.1 消化阶梯任何知识点,均可遵循此消化路径

1.2 功能点

1.2.1 视图案例选中视图,右键刷新,将会呈现新创建的视图选中具体视图,右键弹出功能菜单,选择对应功能项注意事项

(1) 视图中存放的是sql语句,非表的实际数据,节省存储空间,动态更新较便捷;

(2) from子句中,视图名代替表名,运行时动态创建出一张临时表;

(3) 频繁/复杂的sql语句,保存成视图,可反复使用,节省存储空间;

(4) 避免:级联多级视图(降低效率),视图中插入数据(报错);

1.2.2 子查询

1.2.2.1 概况常规子查询(临时表)临时表“按性别汇总”,动态创建,动态删除,语句运行后自动消失;特殊子查询 (in,any,some,all)any,任意一个,与some等价all,全部注意事项

(1) 确保逻辑运算的优先级,可以使用括号;

(2) 尽量避免子查询的层层嵌套,拖累效率;

(3) 子查询,可以嵌入select/from/where子句(目标对象:常量,字段,字段的运算);

(4) 注意子查询的功效,条件判断的值域一般不需要内外表字段的关联,组内判断需要关联子查询;

(5) 必须提前过滤异常值,直接用in,all,any比较会导致整体结果异常;

特殊处理:Null,>0则过滤掉异常值;字母顺序,name<=all(name)表示升序第一个字符,

(6)分组子句,在没有汇总函数时,未起作用,虽然不报语法错误;

(7)子查询的逻辑核心,是拆分问题,逐步回答(select within select);

1.2.2.2 标量子查询 (完成数值间比较)案例单值,进行简单查询结合关键字(in,any,some,all),进行复杂查询注意事项

(1) 有且仅能返回一行一列的结果,即单个值

1.2.2.2 关联子查询 (多表字段关联,单表数值比较)案例内外表关联,借助where子句实现;s2 仅在子查询里有效;注意事项

(1) 对单表中数据进行比较时,使用单表关联自身的关联子查询 ;

(2) 注意表的有效范围,正确访问;

(3) 注意表的关联条件,大因素相同,才成立的过滤条件;

(4) 关联子查询,一定注意是否需要包含与自身相比,注意过滤,或者条件中的等于号;

1.3 功能函数汇总函数字符串函数日期函数算术函数round中-n,表示完成取整后的整数,最后一位抹掉零头

(二)SQL ZOO实操between通过修改边界,或者用大于,小于拼接注意,相乘,不会修改原始小数点的位置;必须放大倍数,取整才行;3%不等价于3.00% round(population/(select population from world where name = &amp;amp;#39;Germany&amp;amp;#39;),2)*100 等价于3.00%使用关联子查询时,需要严格注意关联条件的选择方法一:字符name = all()与关联,结合的使用方法二:采用关联,排序和limit 1方法三:普通排序,手动比对结果一致,但是与系统正确结果相比未匹配成功未有汇总需求,group by分组子句不建议使用利用w1.name&amp;lt;&amp;gt;w2.name 不跟自身相比,all返回多行值,可以把3倍放到子查询中,或者左侧

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。