- show databases;列出现有的数据库。
- use mytest;使用数据库名称为mytest的数据库。
- show tables;列出数据库中的表。
- show columns from t_user;或describe t_user;或desc t_user;列出t_user表中的所有字段信息。
- show status;列出广泛的服务器状态信息。
- show grants;列出授予用户(所有用户或特定用户)的安全权限。
- show errors;列出服务器的错误信息。
- show warnings;列出服务器的警告信息。
- select id, username, password from t_user;列出t_user表中列名分别为id, username, password的所匹配的行。
- select * from t_user;列出所有的列所匹配的行。
- select destinct username from t_user;列出username不同的行。
- select count(destinct username) from t_user;返回的是username不同的行数。
- select * from t_user limit 3;返回不多于3行的数据。
- select * from t_user limit 2, 3;返回从行的索引为2(也就是第三行)开始的3行数据。
- select t_user.username from mytest.t_user;使用完全限定名。
- select * from t_user order by username;列出所有的行并按username进行排列,默认的排列方式为asc(升序排列)。
- select * from t_user order by username, password;列出所有的行并先按username进行排列,后按照password进行排列。
- select * from t_user order by username desc;列出所有的行并按username进行排列,排列方式为desc(降序排列),如果多个列进行降序排列,必须对每个列指定desc关键字。
- select * from t_user order by username desc limit 2;检索出的行按照username进行降序排列并只返回前两行数据(order by 和 limit关键字的联合使用,limit放在order by 后使用)。
- select * from t_user where username='xx' and password='xxx';查询出username为xx和password为xxx的行数据,注意:值为字符串时用单引号括起来,为数值时则不用。
- select * from t_user where username='xx' or password='xxx';查询出username为xx或password为xxx的行数据,注意:值为字符串时用单引号括起来,为数值时则不用。
- 在and和or操作符联合使用的sql语句中,and操作符的优先级大于or操作符,再写此类sql语句时一定要注意次序,应使用圆括号()分组操作符。
- where自居操作符:=等于 <>不等于 !=不等于 <小于 <=小于等于 >大于 >=大于等于 between..and..在指定的两值之间(如:between 5 and 10 等同于 大于等于5小于等于10)。
- select * from t_user where username is null;查询username为null的行数据(null与0,空字符串或空格是不同的)。
- select * from t_user where username in ('aa','bb') order by id;使用in操作符,该语句查询的结果是username为aa或者bb的行数据,in操作符与or操作符作用相同,但执行速度要快。
- select * from t_user where username not in ('aa','bb') order by id;使用not操作符,该语句查询的结果是username不为aa或者不为bb的行数据,mysql仅支持使用not对in,between,exists子句取反。
- select * from t_user where username like '%aa%';使用like操作符及%通配符,用来查询username中包含aa的所有行数据,这种sql语句是区分大小写的,%通配符可以放在任何位置,数量可以是多个,是匹配多个字符。
- select * from t_user where username like 'aa';下划线通配符只能匹配一个字符。
- 通配符使用须知:①不要过度使用通配符,如果其他操作符能达到相同目的,则使用其他操作符(使用通配符查询速度慢)②确定使用通配符时,除非必须,否则不要将它们放在搜索条件的前面③注意通配符的放置位置。
- select concat(username, ' (', password, ') ') from t_user;使用concat()关键函数可对数据库中的字段进行拼接。
- select concat(username, ' (', rtrim(password), ')') from t_user;比上条语句多了一个关键函数rtrim(),用于删除password字段右边的空格,也可以使用ltrim()函数去除左边空格,使用trim()同时去除左右空格。
- select concat(username, '(', password, ')') as namepwd from t_user;使用as关键字设定别名,别名有很多用途,别名又称为导出列。
- mysql语句中支持加减乘除这四种基本算术操作符,如:select 3+2;select 3-2;等。
- select now();返回当前的日期和时间。
- select username,upper(username) as upname from t_user order by username;使用函数upper()可以将该字段的文本转换为大写,同样函数lower()转换为小写。
- select left(username, 2) as a from t_user;函数left()返回的是username字段的文本内容从左边起的2个字符,同样函数right()返回从右边起的字符数。
- select length(username) as len from t_user;函数length()返回的是username字段的文本内容的长度。
- 函数locate()返回的是字符串的子串所在的位置。
- select substring(username, 1, 3) as subname from t_user;返回截取的字段,截取username字段,从第1个字符开始,截取3个字符。
- select now(), curdate(), curtime();函数now()返回当前日期和时间,curdate()返回当前日期,curtime()返回当前时间。
- 函数date(orderdate)是指返回字段orderdate的日期部分,hour()返回小时部分,minute()返回分钟部分,month()返回月份部分,second()返回秒部分,time()返回时间部分,day()返回天数部分,year()返回年份部分。
- 函数date_format(date, format)将date按指定的格式输出。
- select date_add(orderdate, interval 2 day) from table;函数date_add(date, interval expr type)是指添加时间,如向orderdate添加2天。
- 函数addDate()增加一个日期(天,周等) 函数addtime添加一个时间(时,分等) datediff()计算两个日期之差 dayofweek()返回对应的第几个星期。
- 注意:mysql中标准的日期格式为yyyy-mm-dd,在过滤查询的时候要注意进行格式转换,如:select username, password where date(registerdate) between '2012-01-01' and '2014-12-31';
- select abs(-1);函数abs()返回的数值的绝对值,同样,cos()返回的是一个角度的余弦值,exp()返回的是指数值,pi()返回的圆周率,rand()返回一个随机数→select rand() * 10;返回的是0-10之间的随机数,等等。
- select avg(price) as avgp from t_product;函数avg()用于求平均值,如:求t_product表中所有price的平均值,该函数忽略列值为null的行。
- select count(*) from t_user;函数count()用来进行计数行数,select count(username) from t_user;用来记录username不为null的行数,该函数忽略列值为null的行。
- select max(price) as maxp from t_product;函数max()返回指定列中的最大值,如返回price列中的最大值,该函数忽略列值为null的行,该函数可对文本数据操作。
- select min(price) as minp from t_product;函数min()返回指定列的最小值。
- select sum(price * num) as sump from t_product;函数sum()返回指定列值的总和,该函数忽略列值为null的行。
- select avg(distinct price) as avgp from t_product;使用了distinct关键字,返回price列列值不同的平均值。
网友评论