1.distinct关键字

作用:检索出有不同值的列,比如一个商品表中存在供应商vend_id,一个供应商会对应很多商品,我们要查找有多少供应商,就可以用到该关键字去重。

select distinct vend_id from products;

2.limit关键字

作用:返回表中指定行范围的数据

select prod_name from products limit 5; --返回不多于5行的数据

select prod_name from products limit 5,5; --返回从5行开始的5行。

关键字limit在分页中应用较多,假设一个业务场景,每页显示10条数据,根据当前页数显示该页数据,pc表示当前页,则表中起始行 ts = pc*10-10+1

第一种方式:

select * from t_book limit ts,10

这样当数据量很大时候,后面页的数据需要跨越很多数据,我们可以采取第二中方式进行优化

第二种方式:

select * from t_book where book_id>(select t_id from t_book order by limit ts,1) limit 10

 3.order by关键字

作用:对所查询的列进行降序排列

select prod_name from products order by prod_name;

也可以对多列进行排序

select * from products order by prod_price,prod_name;   --这样只有当prod_price有相同的值时候,才会按prod_name排序

也可以在字段后加上DESC关键字进行指定降序排序

select prod_name from products order by prod_name desc;

order by 和 limit 组合可以查询最大值

select prod_price from products order by prod_price DESC limit 1;

order by 和 where 语句连着使用时要放在where后面。

4.and 和 or 结合使用

应用场景:返回商品价格大于10元,且由1002或1003生产的产品

select * from products where (vend_id=1002 or vend_id=1003) and prod_price>=10;

5.IN 和 NOT IN

用 IN 可以代替 or

应用场景:假设1002和1003生产的商品

select * from products where vend_id = 1002 or vend_id = 1003; -- or方法

select * from products where vend_id in (1002,1003); -- in方法
select * from products where vend_id not in (1002,1003); -- not in方法查询不是1002 和 1003 生产的商品

6. like 关键字

作用:进行一些模糊匹配,通常和一些通配符进行搭配查找

select * from products where prod_name like 'jet%' --匹配以jet开头的字符

select * from products where prod_name like '%dcb%' --匹配任何位置包含dcb字符商品信息

select * from products where prod_name like '_jet' -- _匹配一个字符
select * from products where prod_name like '[jdk]%';  --匹配以 j , d , k ,开头的商品

select * from products where prod_name like '[!jdk]%';  --匹配不以 j , d , k ,开头的商品

7.update 关键字

作用:根据一些条件更新数据库中的值

update products set prod_price = 100 where prod_name = jet;  --修改商品名称为jet商品价格

如果不加判断会修改所有商品价格

8.union 关键字

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

请注意,UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。

SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;

UNION 不能用于列出两个表中所有的城市。如果一些客户和供应商来自同一个城市,每个城市只会列出一次。UNION 只会选取不同的值。请使用 UNION ALL 来选取重复的值!

SELECT City FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;

MySql学习笔记(一) —— 关键字的使用的更多相关文章

  1. Mysql学习笔记(三)对表数据的增删改查。

    正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...

  2. MySQL学习笔记一

    MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...

  3. Mysql学习笔记(一)数据类型

    原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型     Mysql数据类型             含义(有符号)     tinyint(m ...

  4. 数据库MySQL学习笔记高级篇

    数据库MySQL学习笔记高级篇 写在前面 学习链接:数据库 MySQL 视频教程全集 1. mysql的架构介绍 mysql简介 概述 高级Mysql 完整的mysql优化需要很深的功底,大公司甚至有 ...

  5. MySql学习笔记四

    MySql学习笔记四 5.3.数据类型 数值型 整型 小数 定点数 浮点数 字符型 较短的文本:char, varchar 较长的文本:text, blob(较长的二进制数据) 日期型 原则:所选择类 ...

  6. 一千行MySQL学习笔记 (转)

    出处:  一千行MySQL学习笔记 /* 启动MySQL */ net start mysql /* 连接与断开服务器 */ mysql -h 地址 -P 端口 -u 用户名 -p 密码 /* 跳过权 ...

  7. mysql basic operation,mysql总结,对mysql经常使用语句的详细总结,MySQL学习笔记

    mysql> select * from wifi_data where dev_id like "0023-AABBCCCCBBAA" ; 1.显示数据库列表.show d ...

  8. Mysql学习笔记(二)数据类型 补充

    原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...

  9. 初识mysql学习笔记

    使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...

随机推荐

  1. SQLite 数据库

    内容来源:高成珍.钟元生<Android编程经典案例解析> SQLite 数据库是Android 中内嵌的轻量级关系型数据库,本质上只是一个文件.SQLite 内部只支持NULL,INTE ...

  2. 在ElasticSearch中使用 IK 中文分词插件

    我这里集成好了一个自带IK的版本,下载即用, https://github.com/xlb378917466/elasticsearch5.2.include_IK 添加了IK插件意味着你可以使用ik ...

  3. OpenDigg安卓开源项目月报201704

    由OpenDigg 出品的安卓开源项目月报第一期来啦.我们的安卓开源月报集合了OpenDigg一个月来新收录的优质安卓开源项目,方便安卓开发人员便捷的找到自己需要的项目工具. DiscreteScro ...

  4. 移动端emoji图标的存储和显示

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/6694595.html 一.emoji是什么 绘文字(日语:絵文字/えもじ emoji)是日本在无线通信中所使用的 ...

  5. 时间同步方法及几个可用的NTP服务器地址

    大家都知道计算机电脑的时间是由一块电池供电保持的,而且准确度比较差经常出现走时不准的时候.通过互联网络上发布的一些公用网络时间服务器NTP server,就可以实现自动.定期的同步本机标准时间. 依靠 ...

  6. C#如何向word文档插入一个新段落及隐藏段落

    编辑Word文档时,我们有时会突然想增加一段新内容:而将word文档给他人浏览时,有些信息我们是不想让他人看到的.那么如何运用C#编程的方式巧妙地插入或隐藏段落呢?本文将与大家分享一种向Word文档插 ...

  7. php操作memcache缓存基本方法

    memcache 是一个高效的分布式的内存对象缓存系统,他可以支持把php的各种数据(数组,对象,基本数据类型)放在它管理的内存中 1.代码使用 <?php //连接 $mem = new Me ...

  8. selenium操作拖拽实现无效果的替代方案

    如果碰到这种情况,无论你是直接通过draganddrop()还是分步执行clickandhold(),dragtoelement(),或通过by_offset位移都无法实现元素拖拽.只能物理模拟了 w ...

  9. 视差滚动特效图片滑块-Sequence.js

    效果演示     插件下载

  10. js鼠标移入移出事件会被子元素触发解决方法

    问题:js写了一个鼠标移入移出事件,但是发现会被内部子元素不断的触发 解决方法:建立一个空的div定位到需要触发的位置,然后设置大小和触发范围一样,最后将事件写在空的div上.