查询的总结:
一般查询之前需要对字段加索引,还有要优化,需要用到其他表,要做关联,现在有左连接,右连接,还有内连接
还有一些总结:
比如那个sql的截取字段和那个正则表达式的
我这变就做身份证的:
下面是我写的一小点sql:
下面标红色的就是用正则表达式,查询的,还有字段截取(substr()这个也很重要)。
SELECT
a.orgcode AS orgcode,
a.departdate AS departdate,
a.routecode AS routecode,
a.routename AS routename,
a.totalnum AS totalnum,
a.type AS type,
NOW() AS createtime,
NOW() AS updatetime
FROM
(
SELECT
ss.departorgcode AS orgcode,
ss.departdate AS departdate,
ss.routecode AS routecode,
ss.routename AS routename,
count(*) AS totalnum,
CASE WHEN SUBSTR(remark, 1, 18) REGEXP '[0-9]{18}|[0-9]{17}X|[0-9]{15}' = 1 THEN
1
ELSE
0
END AS type
FROM
a ss
WHERE 1=1
-- AND ss.departorgcode=
AND ss.ticketstatus in (0,3)
AND DATE_FORMAT(ss.departdate,'%Y-%m-%d') BETWEEN :departdate_s
AND :departdate_e
GROUP BY
ss.departorgcode,
ss.departdate,
ss.routecode,
ss.routename
) AS a
这个sql 的具体也很简单,估计也能看懂,所以不用多解释。
1万+



被折叠的 条评论
为什么被折叠?



