博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MySQL语句设计
阅读量:5109 次
发布时间:2019-06-13

本文共 2433 字,大约阅读时间需要 8 分钟。

表数据插入:

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
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

 
 

转载于:https://www.cnblogs.com/lookphp/articles/6de95a4d9ff4cd9b1f2aedf06d9a8d48.html

你可能感兴趣的文章
[51nod] 1199 Money out of Thin Air #线段树+DFS序
查看>>
poj1201 查分约束系统
查看>>
简明Linux命令行笔记:chmod
查看>>
简明Linux命令行笔记:tar
查看>>
Red and Black(poj-1979)
查看>>
分布式锁的思路以及实现分析
查看>>
vue v-for下图片src显示失败,404错误
查看>>
EM算法
查看>>
腾讯元对象存储之文件删除
查看>>
jdk环境变量配置
查看>>
Linux学习进阶示意图
查看>>
Hbase basic
查看>>
vue-quill-editor上传内容由于图片是base64的导致字符太长的问题解决
查看>>
关于js中的作用域
查看>>
安装 Express
查看>>
平时十三测
查看>>
oracle&nbsp;表空间
查看>>
EnterKey转换为TabKey(兼容IE,Firefox)
查看>>
包含列的索引:SQL Server索引的阶梯级别5
查看>>
Python 中的重点来了 : 迭代器 生成器
查看>>