CTE的递归功能很强大,可以有很多实际的运用场景。比如我们经常用到的日期维度表。这个日期维度表在PowerBI上很常见。以前可以在网上找日期维度表或者用EXCEL写公式生成。通过CTE的递归功能可以很快的生成。 可以自己定义开始时间和结束时间,非常的方面。我这里设置的是2020年1月1号开始到当前日期。完全可以根据实际需要自定义。 set @dt = '2020-1-1'; with recursive CTE as ( select @dt as DateID ,year(@dt) as year_num ,mo…

2020年05月19日 0条评论 167点热度 0人点赞 阅读全文

CTE(Common Table Expression) 介绍 CTE(公用表表达式)是一个临时结果集,可以在后续的单个SQL语句(例如SELECT, INSERT, UPDATE, DELETE )执行。 一个CTE返回的是一个结果集。也可以再查询中被多次引用。对于应对复杂的查询来说,这是最方便的方式。让复杂的查询结果变得简洁易懂。 在MySQL8.0版本开始支持MySQL的CTE。 CTE示例一 WITH cte1 AS (SELECT a, b FROM table1), cte2 AS (SELECT c,…

2020年05月19日 0条评论 155点热度 0人点赞 阅读全文

Mysql 导入和导出数据CSV Mysql中经常会遇到这样的场景,将需要将一个查询结果导出到csv分享给其他人,或者将csv数据导入到Mysql中。可以通过sql语句来完成,非常高效。 导入数据 首先需要在mysql中新创建一个数据表,可以使用create table 语句,也可以手工的方式创建。 使用load data infile 语句来完成数据的导入,数据字段格式与创建的表保持一致。 注意事项/ 解释 使用这种方式导入为追加导入,如果需要全量导入需要使用truncate 清空原来的表。 fields ter…

2020年05月15日 0条评论 156点热度 0人点赞 阅读全文