2-1 SELECT语句基础

一、列的查询

select......from.....

通过 SELECT 语句查询并选取出必要数据的过程称为匹配查询或查询(query)。

该 SELECT 语句包含了 SELECT 和 FROM 两个子句(clause)。

SELECT 子句中列举了希望从表中查询出的列的名称,而 FROM 子句则指定了选取出数据的表的名称。

例:select Product_id,Product_name,Purchase_price

from Product;

查询结果中列的顺序和SELECT 子句中的顺序相同。

二、查询出表中所有列

select * from .....

星号( *)代表全部列的意思。如果使用*就不能设定显示的顺序,结果就是创建的表的顺序。

例:select * from Product;

三、为列设定别名

select... as ....from ....

别名可以使用英文,使用英文时直接写就行;也可以使用中文,使用中文时需要用双引号(") 括起来。

例:①select Product_id as id ,Product_name as name,Purchase_price as price

from Product;

②select Product_id as "商品编码" ,Product_name as "商品名称",Purchase_price as "进货单价"

from Product;

四、常数的查询

字符串常数、数字常数、日期常数

例:select '商品' as string,38 as number,'2019-12-20' as date,

product_id,product_name

from product;

五、从结果中删除重复行

在SELECT语句中使用DISTINCT可以删除重复行。在使用 DISTINCT 时, NULL 也被视为一类数据。DISTINCT 关键字只能用在第一个列名之前

例:select distinct Product_type,Purchase_price from Product;

执行结果

六、根据where语句来选择记录

SELECT 语句通过 WHERE 子句来指定查询数据的条件。

SELECT <列名>, …… FROM <表名> WHERE <条件表达式>;

首先通过WHERE 子句查询出符合指定条件的记录,然后再选取出 SELECT 语句指定的列。

SQL 中子句的书写顺序是固定的,不能随意更改。WHERE子句要紧跟在FROM子句之后。

例:select Product_name,Purchase_price from product where Product_type='衣服';

执行结果

七、注释的书写方法

两种:①1行注释:书写在“--”之后,只能写在同一行。

例:-- 本SELECT语句会从结果中删除重复行。

SELECT DISTINCT product_id, purchase_price FROM Product;

②多行注释:书写在“/*”和“*/”之间,可以跨多行

例:/* 本SELECT语句,

会从结果中删除重复行。 */

SELECT DISTINCT product_id, purchase_price FROM Product;

注释是SQL语句中用来标识说明或者注意事项的部分,不影响SQL语句的执行结果。

2-2 算术运算符和比较运算符

一、算术运算符

SELECT子句中可以使用常数或者表达式。例如:加减乘除括号(+、-、*、/、())等。

运算是以行为单位执行的。

例:elect Product_name,Sale_price,Purchase_price*2 as "进货价*2" from Product;

执行结果

二、需要注意NULL

所有包含 NULL 的计算,结果肯定是 NULL。

三、比较运算符

比较运算符

使用比较运算符时一定要注意不等号和等号的位置。

例:select Product_name,Product_type,Sale_price from Product

where Sale_price>=500;

执行结果

还可以使用比较运算符对计算结果进行比较。

例:select Product_name,Product_type,Sale_price from Product

where Sale_price-Purchase_price>=500;

执行结果

四、对字符串使用不等号时的注意事项

字符串类型的数据原则上按照字典顺序进行排序,不能与数字的大小顺序混淆。

例:

插入的字符串类型的数据,按照字典排序是 1,10,11,2,222,3

where chr>'2';得到的结果是222,3

五、不能对NULL使用比较运算符

希望选取NULL记录时,需要在条件表达式中使用IS NULL运算符。希望选取不是NULL的记录时,需要在条件表达式中使用IS NOT NULL运算符。

2-3 逻辑运算符

一、NOT运算符

NOT 不能单独使用,必须和其他查询条件组合起来使用。NOT运算符用来否定某一条件,但是不能滥用。

例:select Product_name,Product_type,Sale_price from Product

where NOT Sale_price>=500;

即select Product_name,Product_type,Sale_price from Product

where NOT Sale_price<500;

二、AND运算符和OR运算符

AND 运算符在其两侧的查询条件都成立时整个查询条件才成立,其意思相当于“并且”。

OR 运算符在其两侧的查询条件有一个成立时整个查询条件都成立,其意思相当于“或者“。

多个查询条件进行组合时,需要使用AND运算符或者OR运算符。

三、通过括号强化处理

AND运算符的优先级高于OR运算符。想要优先执行OR运算符时可以使用括号。

例:select Product_name,Product_type,Regist_date from Product

where Product_type='办公用品' and (Regist_date='2009-09-11' or Regist_date='2009-09-20');

四、逻辑运算符和真值

通过创建真值表,无论多复杂的条件,都会更容易理解。

使用 AND 运算符进行的逻辑运算称为逻辑积,使用 OR 运算符进行的逻辑运算称为逻辑和。

五、还有NULL时的真值

通常的逻辑运算是二值逻辑,SQL中则存在不确定值,因此被称为三值逻辑。

查询显示注释_第2章 查询基础相关推荐

  1. 查询显示注释_SQL汇总--简单查询

    一.基本的查询语句 1.select from语句 2.别名:别名是英文不加单引号,别名是中文加单引号 3.distinct:识别出不重复的数据,放在select语句当中,第一个列名前面:如果是多个列 ...

  2. plsql查询不显示结果_管理NVivo的查询结果

    NVivo是一款支持定性研究方法和混合研究方法的软件.它可以帮助您收集.整理和分析访谈.焦点小组讨论.问卷调查.音频等内容.全新的NVivo12更可协助您处理社交媒体和网页内容.NVivo强大的搜索. ...

  3. 高性能mysql 第六章_第六章 查询性能优化

    1. 为什么查询速度会慢 如果把查询看作是一个任务,那么它由一系列子任务组成,每个子任务都会消耗一定的时间.如果要优化,无非是减少子任务数量,或者减少子任务的执行次数. 查询声明周期:生成计划,执行, ...

  4. 加sql查询语句导出_搞不懂这些查询语句,SQL简单查询也无法从入门到熟练

    大纲: 一.基本的查询语句 二.指定查询条件 三.注释和SQL语句注意事项 四.运算符 五.谓词 一.基本的查询语句 从表中选取数据时需要使用select语句,也就是只从表中选出(select)必要数 ...

  5. sql 如何根据月份查询数据总数_什么是慢查询?如何通过慢查询日志优化?

    日志就跟人们写的日记一样,记录着过往的事情.但是人的日记是主观的(记自己想记的内容),而数据库的日志是客观的,根据记录内容分为以下好几种日志: a.错误日志:记录启动.运行或停止mysqld时出现的问 ...

  6. mysql慢查询设置无线_深入mysql慢查询设置的详解

    在web开发中,我们经常会写出一些SQL语句,一条糟糕的SQL语句可能让你的整个程序都非常慢,超过10秒一般用户就会选择关闭网页,如何优化SQL语句将那些运行时间 比较长的SQL语句找出呢?MySQL ...

  7. 查询显示注释_SQL的简单查询

    1.基本的查询语句 -- *代表查询所有的列 select * from <表名>; distinct表示列中不包括重复的值,例如select distinct 姓名: 如果是select ...

  8. sql server查询不显示结果_仅凭网上查询结果显示邮件由行政机关签收,能证明行政机关一定收到了当事人的申请吗?...

    仅凭网上查询结果显示邮件由行政机关签收,能证明行政机关一定收到了当事人的申请吗? 蓝承烈与中国人民银行二审行政裁定书 北京市高级人民法院 行 政 裁 定 书 (2018)京行终2922号 上诉人(一审 ...

  9. jdbc mysql查询显示图片_在实现JDBC时如何显示存储引擎-MySQL CONNECTION查询?

    使用SELECT ENGINE显示存储引擎名称.让我们首先创建一个表-create table DemoTable -> ( -> Id int NOT NULL AUTO_INCREME ...

最新文章

  1. Linux Shell 逻辑运算符、逻辑表达式详解
  2. Graph cut [转]
  3. SQL-92标准 中文翻译——概念(位字符串)
  4. 无人驾驶入门(基本流程)
  5. 动态规划法实现最优二叉搜索树
  6. Confluence 企业服务器正遭攻击
  7. Ubuntu中配置虚拟专用网络***
  8. 文件管理类函数(1)
  9. leetcode- 225 Implement Stack using Queues
  10. MySql Binlog初识
  11. Java开发工具(Eclipse工作空间的基本配置)
  12. 不同的数据库之间导数据
  13. python图形绘制星空图_绘图.md · 不是我/PyQt5-Chinese-tutorial - Gitee.com
  14. 登录服务器的详细步骤
  15. 计算机考研吉大东北大学大连理工,考研就选985/211!这7所985高校却一个A+学科都没有,认真的吗?...
  16. Hrbust 2064 萌萌哒十五酱的宠物~(树链剖分+线段树)
  17. 怎么安装光盘并重新启动计算机,如何用光盘重新安装电脑系统
  18. 组合计数——车的放置(逆元)+数三角形+序列统计(lucas定理)
  19. android直播sdk+美颜,直播中有没有美颜SDK有何区别?
  20. 最小链覆盖——Dilworth定理

热门文章

  1. linux at模块,使用kgdb调试linux内核及内核模块
  2. eclipse安装WindowBuilder Pro组件
  3. 活到老,学到老!各大厂数据库技术解决方案来了
  4. 探索 Rust 异步简化编程
  5. 爷青结,Microsoft 放弃 Windows 95 时代的图标
  6. 华为:今年至少 3 亿台设备使用鸿蒙;增长 7%,互联网人薪资报告出炉;英特尔侵犯芯片专利被判赔偿 22 亿美元 | 极客头条...
  7. 一个快速排序写了快 10000 字?
  8. 谷歌称远程办公影响工作效率,2021年回归线下办公
  9. 微软、阿里抢占开源一线,JavaScript、Python 备受热捧,GitHub 2020 数字洞察报告揭晓!...
  10. 满满的一整篇,全是 JVM 核心知识点!