Fork me on GitHub

MySQL语句设计

表数据插入:

1、insert into 表名 (字段名...)values(’值‘);

扩展:
2、insert into 表名 select*from 表名2;
3、insert into 表名(字段名...)select 对应的字段名... from 表名2 where 条件 limit 10;
4、insert into bbs_user values(null,'xiaohong',123456,13994137211,123,1);值和字段一一对应,一个不能少哦
 
limit的用法:
limit    10;    表示限制的个数为10条
limit 10,10;    表示从第10条开始(跳过10,从11开始),限制的个数为10条(条件,条数)
例子:select*from bbs_user limit 5,5;
 
分页:
$page 当前页码
$offset 偏移量
$pagesize = 10 每页显示数据条数
第一页
limit 0,10;
第二页
limit 10,10;
第三页
limit 20,10;
 
$offset = ($page-1)*$pagesize;
select * from bbs_user limit $offset , $pagesize;
 
查询操作:
查询所有数据包,含有所有字段
mysql> select*from bbs_user;
 
查询username,userpwd 的所有数据
mysql>select username,userpwd from bbs_user;
 
查询id=3的数据,数据中只用username和userpwd
mysql>select username,userpwd from bbs_user where id=3;
 
查询id>0的数据,数据中包含username,userpwd 总共要查1条
mysql>select username,userpwd from bbs_user where id>0 limit 1;
 
查询id>0的数据,从第二条开始取一条,只包含username,userpwd
mysql>select username,userpwd from bbs_user where id>0 limit 1,1;
 
 
distinct的用法:
从bbs_user 查询 username字段的数据,过滤掉重名(只针对一个字段)
mysql>select distinct username from bbs_user;
注意:distinct关键字的作用范围是整个查询的列表,而不是单独的一列。在同时对两列数据进行查询时,如果使用了DISTINCT关键字,将返回这两列数据的唯一组合。
mysql>select distinct id,username,sex from bbs_user;
 
as语句的用法
别名:使用as给表或字段可以起个别名,as可以省略
目的:可以让很长的表名或者字段名变的简洁,防止表名和字段名重复
在多表关联查询的情况下,如果表中有同名的字段,必须使用别名加以区分。
 
1、分解动作
第一步:select    from    bbs_order as o,  bbs_user as u  where    ...
第二步:select   u.username as uname,  o.username,  o.bianhao  from  bbs_order as o,bbs_user as u where    o.username=u.username;
 
2、AS可以省略不写,留一个空格即可
select    u.username uname,o.username,o.bianhao   from   bbs_order o,bbs_user u    where    o.username=u.username; 
 
多表查询
 
Order By的用法:
排序查询:将查询到的结果按照指定字段顺序排序,如果第一个字段不能排列出顺序先后,就会按照后一个字段进行排序
select * from 表名 where 条件 order by 字段1 asc|desc,字段2 asc|desc...;
asc: 从小到大    顺序
desc:从大到小    逆序
用法:帖子置顶,置顶为1,默认为0
 
and    &&
or    ||
not
 
<
>
=
<=
>=
!=
is null
is not null
between 值 and 值
not between 值 and 值
like的用法:模糊查询
(not)like '% a_i%';下划线‘_’的作用:代表任意字符
like    '%a';结尾是a
like    'a%';头部是a
 
统计:
次数统计
count()count(*)count(字段)
 
求和:sum();
平均值:avg();
最大值:max();
最小值:min();
版本号:version();
 
分组:group by
对分组结果再过滤:having
select sum(money) from bbs_user group by username having id>5;
 
where 字段    in(值1.值2.值3。。。)
 
子查询
where username in (select username from 表名 where 条件);
 
判断操作是否成功:
 
1,插入操作
mysql_insert_id()>0
 
2,删除操作
mysql_affected_rows()>0
 
3,修改操作
mysql_affected_rows()>0
 
4,select 查询
mysql_num_rows($result)>0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 





posted @ 2014-12-03 20:14  LookPHP  阅读(163)  评论(0编辑  收藏  举报