SQL手动操作得少,遇到一个CASE,就记录一个CASE吧。
今天遇到的是统计一个发布结果。
这个发布表中,有两个字段是外键,并且要求按其中一个外键,作group by操作,
最后,导出来excel能读取的csv文件。
首先,sql的写法如下:
select s.name, count(s.name) from history as d, user as a, site as s where a.id=d.user_id and s.id=d.site_name_id and d.server_env="PRD" and d.add_date >= "2018-07-30" group by s.name order by count(s.name) desc;
那如何把结果导出为csv呢,这主要是用mysqldump来操作比较好。
mysql -hip -uuser -p -A DB -e '[sql]' | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > /tmp/a.csv
然后,搞定。
收工。