MySQL查询语句:
select * from 表名; ##查询出该表名下所有数据
*
代表所有字段
简单的查询语句方式
select [字段列表 / 表达式 / 函数] from 表名;
查询多个字段
select 字段1,字段2 from 表名;
表达式:
select 表达式[算术表达式] from 表名;
例如:此处有一张工资表 payroll:其中包含2个字段:
name && wages
查询一年的工资:
select name,wages*12 from payroll;
去重:
在需要去重的字段前加上 distinct
例如:test表中有多个相同数据字段名为:tt
select distinct tt from test;
函数:
where
条件查询:
where后面一般跟表达式(主要是条件表达式)
条件表达式可以是 等值比较 大于 小于 大于等于 小于等于 不等于
where 条件表达式
语法:
select * from 表名 where 字段 = 字段值;
例1:
book中有3本书 price 都为10
select * from book where price = 10;
例2:
查询book表中price小于10的书籍:
select * from book where price < 10;
例3:
查询book表中price大于10的书籍:
select * from book where price > 10;
例4:
查询book表中price不等于10的书籍:
select * from book where price <> 10;
多条件查询:
并且 关键字 and
或者 关键字 or
in关键字 in
代表在这个取值中只要有一个匹配符合条件;
not in
不在这个范围区间之内的;
查询book表中大于10且小于20的书:
select * from book where price >10 and price < 20;
查询book表中大于10且小于20,并且日期为2010-9-10的书:
select * from book where price >10 and price < 20 and date = '2010-9-10';
查询book表中大于20的或者小于10的:
select * from book where price < 10 or price > 20;
in关键字 in 代表在这个取值中只要有一个匹配符合条件;相当于 多个 or
条件
select * from book where price in(10,20,30);
not in 不在这个区间范围内:
select * from book where price not in(10,20,30);
between ... and ....
相当于大于等于 小于等于
select * from book where price between 10 and 20;
在mysql中 NULL 不等于 空 也就是 price 不能等于 null 不能这样查询
判断一个字段的数值是否为空,需要用到关键字 is
;
判断不为空 需要用到关键字 not is
例如 查询免费书籍,也就是 price 为null
select * from book where price is null;
##不能写成 select * from book where price = null;
查询字符串长度
select length(字符串名) from 表名 ;
例:
select length(name) from book where num = 1 ;
查询num为1 的name字段长度;