mysql必知必会(二)

原创 2015年07月09日 23:28:58

sql中最常用的就是查询(select),下面对查询做下简单的总结。
在mysql必知必会(一)中少了更改表(alter),在这添加上。
1.更改表(alter)
添加一列

alter table user add tel char(11);

删除一列

alter table user drop column tel;

添加唯一约束

alter table user add constraint uk_name unique(name);

添加默认值

alter table alter password set default '123456';

添加非null约束

alter table user modify column name varchar(20) not null;

2.查询(select)
查询所有行

select * from user;
select id,name,password from user;

如果查询所有列应尽量避免使用通配符(*),因为这样会降低查询的性能。可以写全需要查询的字段。
去重复查询(distinct)

select distinct name from user;

限制结果,用于分页(limit)

select name from user limit 5;
select name from user limit 10,5;

第一句表示显示前5行,第二句表示从11行开始,显示5行。第一行为0.
排序(order by ASC/DESC)

select name,password from user order by id;
select name,password from user order by id desc;
select name,password from user order by name, tel;
select name,password from user order by name desc, tel;
select name,password from user order by name desc, tel desc;

asc是升序,desc是降序。
order by 默认排序是升序,即可以省略asc,但是降序时必须加上desc,如果有多个降序列,每列都要加上desc。
过滤查询
过滤查询就是在where字句中指定过滤条件。
where 支持的条件操作符有:

  1. = 等于
  2. <> 不等于
  3. ! 不等于
  4. < 小于
  5. > 大于
  6. <= 小于等于
  7. >= 大于等于
  8. between 在指定的两个值之间

其中还有逻辑操作符and,or,not和in。
注意:and的优先级比or高,如果想先处理or两边的过滤条件,可以加上括号()。

select prod_name,prod_price from product where (id = 1001 or id =1002) and prod_price > 10;

select prod_name,prod_price from product where id in(1001, 1002);

select prod_name,prod_price from product where id not in(1001, 1002);

模糊查询
为在搜索字句中使用通配符,必须使用like操作符。
通配符有:
百分号(%),表示任何字符出现任何字数。
下划线(_),只能匹配单个字符。

  • 不要过度使用like,如果其他操作符可以完成就使用其他操作符
  • 通配符搜索使用的时间比较长
  • 尽量不要把通配符放在where字句的开始处。

函数放在(三)中

版权声明:本文供交流学习,能够帮助到你是我最大的荣幸!

《MySQL必知必会》全书总结

知识点回顾
  • sinat_28978689
  • sinat_28978689
  • 2017年02月21日 21:08
  • 1798

mysql学习--mysql必知必会

数据库操作分类:
  • huang2009303513
  • huang2009303513
  • 2014年05月18日 09:12
  • 2765

mysql必知必会pdf

下载地址:网盘下载 内容简介 编辑 《MySQL必知必会》注重实用性,操作性很强,适用于广大软件开发和数据库管理人员学习参考。 作者简介 编辑...
  • cf406061841
  • cf406061841
  • 2017年06月03日 22:55
  • 830

《mysql必知必会》笔记(一)

一:了解SQL 1:列是表中的字段,所有表都由一个或多个列组成的。行是表中的记录,表中的数据都按行存储。          2:表中每一行都应该有可以唯一标识自己的一列或一组列。主键(一列或一...
  • gqtcgq
  • gqtcgq
  • 2014年10月27日 09:18
  • 2478

《MySQL必知必会》学习笔记十五(触发器)------掌握部分

MySQL必知必会》学习笔记整理
  • sinat_28978689
  • sinat_28978689
  • 2017年02月20日 20:06
  • 244

《MySQL必知必会》中表的介绍及脚本文件

《MySQL必知必会》中表的介绍及脚本文件详见: customers表:存储所有顾客的信息; orderitems表:存储每个订单中的实际物品; orders表:存储顾客订单(不是订单细节); pr...
  • panda_AJ
  • panda_AJ
  • 2017年04月21日 10:38
  • 954

mysql必知必会脚本

《mysql必知必会》脚本地址:http://www.forta.com/books/0672325675/    1.创建数据库表脚本 -----------------------------...
  • mediocre117
  • mediocre117
  • 2016年11月17日 06:51
  • 921

MySQL必知必会-2安装MySQL

MySQL下载地址可参看前言,也可到官网下载最新的MySQL,自从MySQL被Orcal收购后,更新就慢了很多,所以前言下载地址中的版本对于学习来说绝对够用了。而为了方便还是建议使用前言的所有工具和脚...
  • zoroday
  • zoroday
  • 2017年02月01日 15:04
  • 322

《MySQL必知必会》学习笔记十三(存储过程)------掌握部分

《MySQL必知必会》学习笔记整理
  • sinat_28978689
  • sinat_28978689
  • 2017年02月16日 18:36
  • 201

《SQL必知必会》(1-7)

《SQL必知必会》读书笔记 说明:本书SQL语句均使用PLSQL Developer客户端,在oracle数据库中实践。 1. 基本概念 表(table):某种特定类型数据的结构化清单。 模式...
  • Regina_niu
  • Regina_niu
  • 2016年12月21日 09:33
  • 524
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mysql必知必会(二)
举报原因:
原因补充:

(最多只允许输入30个字)