~]# mysql
-u:用户名
-p:密码
-S:socket文件
-h:ip
-P:端口
-e:直接执行的命令
<:恢复数据
> show charset;
#常用
utf8:3个字节
utf8mb4:4个字节,支持emoji
utf8mb4_general_ci:大小写不敏感
utf8mb4_bin:大小写敏感
#创建数据库
> CREATE DATABASE zabbix CHARSET utf8mb4 COLLATE utf8mb4_bin;
#查看数据库
> SHOW DATABASES;
> SHOW CREATE DATABASE zabbix;
#删除数据库
> DROP DATABASE oldguo;
select 列
from 表
where 条件
group by 条件
having 条件
order by 条件
limit
#查询表中 name和population的值
SELECT NAME ,population FROM city;
#SELECT配合WHERE 子句使用
#查询中国所有的城市名和人口数
SELECT NAME,population FROM city WHERE countrycode=‘CHN‘;
#世界上小于100人的城市名和人口数
SELECT NAME,population FROM city WHERE population<100;
#1. 查询中国人口数量大于1000w的城市名和人口
SELECT NAME,population FROM city WHERE countrycode=‘CHN‘ AND population>8000000;
#2. 查询中国或美国的城市名和人口数
SELECT NAME,population FROM city WHERE countrycode=‘CHN‘ OR countrycode=‘USA‘;
#3. 查询人口数量在500w到600w之间的城市名和人口数
SELECT NAME,population FROM city WHERE population>5000000 AND population<6000000;
#where 配合 like 子句 模糊查询
#查询一下contrycode中带有CH开头,城市信息
SELECT * FROM city WHERE countrycode LIKE ‘CH%‘;
#where 配合 in 语句
#查询中国或美国的城市信息
SELECT NAME,population FROM city WHERE countrycode=‘CHN‘ OR countrycode=‘USA‘;
#GROUP BY
#将某列中有共同条件的数据行,分成一组,然后在进行聚合函数操作.
#1. 统计每个国家,城市的个数
SELECT countrycode ,COUNT(id) FROM city GROUP BY countrycode;
#2. 统计每个国家的总人口数.
SELECT countrycode,SUM(population) FROM city GROUP BY countrycode;
#3. 统计每个 国家 省 的个数
SELECT countrycode,COUNT(DISTINCT district) FROM city GROUP BY countrycode;
#4. 统计中国 每个省的总人口数
SELECT district, SUM(population) FROM city WHERE countrycode=‘CHN‘ GROUP BY district ;
#5. 统计中国 每个省城市的个数
SELECT district, COUNT(NAME) FROM city WHERE countrycode=‘CHN‘ GROUP BY district ;
#6. 统计中国 每个省城市的名字列表GROUP_CONCAT()
SELECT district, GROUP_CONCAT(NAME) FROM city WHERE countrycode=‘CHN‘ GROUP BY district ;