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'; 
作者 铁血 汉子 2018年5月24日
2024/11/21/12:08:52pm 2018/5/24/1:25:45
0 2362