使用Merge关键字做插入或更新操作 Merge关键字可以进行2个表之间的更新。 应用场景 批量插入或更新数据; 经销存更新库存 表之间数据的复制 等等 语法说明 MERGE 目标表 USING 源表 ON 匹配条件 WHEN MATCHED THEN 语句 WHEN NOT MATCHED THE ...
分类:
数据库 时间:
2020-07-10 00:08:28
阅读次数:
65
sql的书写规范: 1.表名需要有意义 2.注释 单行注释 -- 多行注释 /* */ 3.缩进 4.空格 5.大小写 关键字用大写 表名列名用小写 sql技巧: 1.CASE WHEN THEN ...ELSE END 用于查询 或者用于修改 2.HAVING 一般和聚合函数一起使用的 也可单独使 ...
分类:
数据库 时间:
2020-05-26 15:28:41
阅读次数:
89
由于工作需要,最近做了很多 BI 取数的工作,需要用到一些比较高级的 SQL 技巧,总结了一下工作中用到的一些比较骚的进阶技巧,特此记录一下,以方便自己查阅,主要目录如下: SQL 的书写规范 SQL 的一些进阶使用技巧 SQL 的优化方法 SQL 的书写规范 在介绍一些技巧之前,有必要强调一下规范 ...
分类:
数据库 时间:
2020-05-25 09:39:32
阅读次数:
111
MySQL对sum()字段进行条件筛选:having 显示按日期汇总且内数量大于10的记录。 SELECT , count( ) as num FROM tbName GROUP BY date HAVING num 10; 在这里,我们不能用where来筛选超过10的记录,因为表中不存在这样一条记 ...
分类:
数据库 时间:
2020-05-21 19:08:34
阅读次数:
56
可以利用这个函数与ORDER BY子句一起完成随机抽取某些行的功能。它的原理其实 就是ORDER BY RAND()能够把数据随机排序。 加索引 CHECK TABLE 也可以检查视图是否有错误,比如在视图定义中被引用的表已不存在,举例如 下。 ...
分类:
数据库 时间:
2020-01-26 17:20:52
阅读次数:
88
方式一: 方式二: 第二种比较好。第二种的SQL执行效率高的主要原因是合并后日志量(MySQL的binlog和innodb的事务让日志)减少了,降低日志刷盘的数据量和频率,从而提高效率。 通过合并SQL语句,同时也能减少SQL语句解析的次数,减少网络传输的IO。当SQL指令送达MySQL服务器后,在 ...
分类:
数据库 时间:
2019-11-26 13:45:25
阅读次数:
80
注意: oracle .sql 查询中 用<> 或者 !=null ,也顺便过滤掉了该字段中所有为null的值。 介绍一种行转列,常见的案例 统计各个公司 各个发票的数量,妙用sum函数,用sum 函数做累计, 如果统计每家公司每种类型的发票量, 通常 按照 按照公司编号,发票类型来分组,但是这样就 ...
分类:
数据库 时间:
2019-08-03 15:04:53
阅读次数:
148
这几天在写索引,想到一些有意思的TIPS,希望大家有收获。 一、一些常见的SQL实践 (1)负向条件查询不能使用索引 not in/not exists都不是好习惯 可以优化为in查询: (2)前导模糊查询不能使用索引 而非前导模糊查询则可以: (3)数据区分度不大的字段不宜使用索引 原因:性别只有 ...
分类:
数据库 时间:
2018-12-30 02:56:14
阅读次数:
208
现在在公司担任数据库开发工程师一职位,主要工作是根据业务写MSSQL的存储过程,可以学到SQLService的SQL编程,会使用系统函数,系统表,系统存储过程,临时表的使用,以及各种SQL(DML,DDL等),会根据不同的业务情况,组装不同的SQL语句,使用各种SQL技巧得到想要的数据!好了,技术并不难,难点是在业务需求的沟通和交流,以及对业务知识的理解,感谢公司给我这份工作,不过公司对这个岗位的
分类:
数据库 时间:
2018-11-13 00:10:36
阅读次数:
228
最近,在作django数据表迁移时用到的。 因为在django中,我把本来一个字符型字段,更改成了外键, 于是,哦喝~~~字符型字段相当于被删除了, 为了能导入这些字段的外键信息,于是出此下策。 其实按平滑迁移策略, 这个字符型字段应该保留,而增加外键字段。 待功能稳定之后,再删除老字符字段。 但人 ...
分类:
数据库 时间:
2018-09-19 16:16:34
阅读次数:
245