欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP之Mysql常用SQL语句示例的深入分析

程序员文章站 2024-02-20 16:31:22
1.插入数据insert into表名(列名1,列名2,列名..) values(值1,值2,值...);  insert into product(name...
1.插入数据
insert into表名(列名1,列名2,列名..) values(值1,2,值...); 
insert into product(name, price, pic_path) values('nike',500,'uploads/3245.jpg');

2.更新数据
update 表名set列名1=值1,列名2=值2[where条件]; 
update product set name='lining', price=50where id=2; 

3.删除数据
deletefrom表名[where条件]; 
deletefrom product where id=2;

4.查询所有数据 
select*from表名;select*from product;

5.查询部份列
select列名1,列名2,列名n from表名;
select name, price from product;

6.条件查询
# 比较 =, <, >, <=, >=, !=
select*from表名where列名=值;
select*from product where id=2;
# and 与 
select*from表名where条件1and条件2and条件n; 
select*from product where name='nike'and price=50;
# or 或 
select*from表名where条件1or条件2or条件n;
select*from product where name='nike'or price>50; 
# not 非 
select*from表名wherenot条件1;
select*from product wherenot name='nike'; 
#in 枚举 
select*from表名where列名in(值1,2,n); 
select*from product where id in(2,3,4,10); 
select*from product where id notin(2,3,4,10); 
#like 模糊查询 
select*from表名where列名 like '%值%'; 
select*from product where name like '%li%'; 
#between...and... 范围查询 
select*from表名where列名 between and值; 
select*from order where created between '2010-01-01'and'2011-01-01';

7.查询排序
select*from表名 order by列名排序方式;
#排序方式: asc(升序,默认),desc(降序) 
select*from product order by created desc;

8.限制查询结果数量
select*from表名 limit 开始记录数,结果数量;select*from product limit 5;
select*from product limit 2,5;

9.聚合函数
# count 总记录数 
select count(列名)from student; 
select count(id)from student; 
# sum 总共 
select sum(列名)from student; 
select sum(age)from student; 
# avg 平均值 
select avg(列名)from student;
select avg(age)as avg_age from student; 
# max 最大值 
select max(列名)from student; 
select max(age)from student; 
# min 最小值 
select min(列名)from student; 
select min(age)from student;

10.子查询
select name from student where age<(select avg(age)from student ); 
select*from product where id in(select id from order );

11.连接查询
select s.username as stu_name, t.name as te_name from student s, teacher t where s.teacher_id=t.id;