- mysql -u root -p //登录
- mysql -h 112.65.203.33 -u root -p //h主机地址,登录远程数据库需要提供主机地址
- show databases; //显示数据库
- show tables; //显示表
- show columns from user; //显示user表的所有字段
- describe user; //describe和show columns from等效,是上面的快捷方式,注意此处表明不能是mysql的保留关键字,比如若表名为group,此命令会报错
- show status; //显示广泛的服务器状态信息
- help show; //显示所有的show语句
- create database strapi; //创建
- use strapi; //选择数据库
- exit; //退出
注意事项:命令后有分号
select
- select distinct price from demo; //只返回不同的值
- select price from demo limit 5; //限制5条
- select price from demo limit 5,5; //下一个5条,第一个数为开始位置
- select price from demo limit 5 offset 5; //同上一行,替代语法
- select demo.price from demo; //完全限定列名,使用场景,多表查询,且有相同字段,对应的有,完全限定表名
- select price from demo order by price; //排序
- select price from demo order by price,date; //多列排序,price如果相同则按照date排序
- select price from demo order by price desc; //降序排列,不写默认为升序(asc)
- select price from demo order by price desc limit 1; //找出价格最高的值
- //注意order by子句必须位于from子句之后,limit必须位于order by之后
where
- = //等于
- <> //不等于
- != //不等于
- < //小于
- <= //小于等于
- > //大于
- >= //大于等于
- between //在指定的两个值之间
- select price from demo where price <> 50; //比较值如果为字符串,则用引号括起来
- select price from demo where price between 50 and 60; //between注意后面有and
- select price from demo where price is null; //空值检查,指不包含值
- select price from demo where price > 50 and price < 70; //and
- select price from demo where price = 70 or price = 50; //or
- //and的计算次序优先级高于or,在and和or都出现的情况下,使用圆括号可以消除歧义
- select price from demo where price in (70,50); //in操作符,功能和上面的or相同,但是更直观
- select price from demo where price not in (70,50); //not操作符,否定它之后所跟的任何条件,
- //mysql支持使用not对in,between和exists子句取反,这和与多数其他DBMS允许使用not对各种条件取反有很大的差别
- select * form demo where firstname like 'abc%'; //firstname以abc开头,%表示任意字符出现任意次(包含0个),%不会匹配null
- select * form demo where firstname like '%abc%'; //任意位置包含abc
- select * form demo where firstname like 'a%c'; //以a开头以c结尾
- select * form demo where firstname like '_bc'; //firstname长度三位,后面两位是bc,_匹配单个字符
- //通配符搜索一般要比其他搜索花更长时间
- select * form demo where firstname regexp 'bc';