1.1(SQL学习笔记)SQL基础
一、SELECT
建表及数据填充语句下载:链接: https://pan.baidu.com/s/1WHYafwqKJEKq1kDwCH_Zlg 提取码: 3wy4
SELECT用于指定检索返回的结果。(本例均采用mysql)
FROM用于指定检索的表。
例如:SELECT prod_name FROM products;
会检索products表,返回prod_name列。

运行结果如下

SELECT中可以指定多个列,列名直接用“,”隔开。
SELECT colName1,colName2,colName3... FROM tableName;
如果需要返回所有列,可以采用“*”。
SELECT * FROM tableName;返回指定表所有列。

注:如果不是必须返回所有列,不要这样写,返回所有列会降低检索性能。
二、ORDER BY
检索出来所显示的数据的顺序是不确定的,这时需要人为对其排序。
排序所使用的关键字为ORDER BY colName,后面加上排序所依据的列,也就是说按照(colName列)进行排序(默认升序)。
ORDER BY需要放在最后面。

指定了按prod_name排序(默认升序)。
ORDER BY 后面可以指定多个列名,例如ORDER BY colName1,colName2,colName3...;
排序时会先按colName1中数据进行比较进行排序,如果colName1中的数据相同无法,则按colName2中的数据进行排序。
如果colName1可以区分出次序,则后续列名都不会起作用。
例如上图中先按vend_id排序,在vend_id相同的情况下按照prod_price进行排序。

之前说到默认排序是升序,那么必定有方法可以将其设置为降序。
设置为降序需要通过DESC(descend)关键字来实现。升序:ASC(ascension )

上图先采用vend_id升序排列,在vend_id相同的情况下采用prod_price进行降序排列。
由于默认是升序,所以ASC可以不指定。(如果是升序可以不用添加,如果是降序则必须添加)
如果要按多列进行降序排序,则每个列名后都需要添加DESC。
三、WHERE
上列通过SELECT * FROM tableName检索出来的数据是全部的数据。
有没有办法只检索出我们需要的数据呢?例如所有单价为3.49的商品。
这时就需要通过WHERE指定添加,即返回我们需要的数据。
先看一个例子

这里返回了所有prod_price小于5的商品信息。这里我们先来分析下执行顺序。
首先执行FROM找到需要进行查询的表,然后执行WHERE语句,找出所有prod_price小于5的行。
接着执行ORDER BY对其先按vend_id降序排序,然后再按prod_price升序排序。最后执行selece
展示出检索结果的所有列。
WHERE支持的操作符号有
=:等于
<>, !=:不等于。
<:小于
>:大于;
<=
>=
!<:不小于,即大于等于。
!>:不大于,即小于等于。
BETWEEN:位于指定两个值之间。
IS NULL:为null
(不同的数据库管理软件对操作符的支持不太一样,某些数据库管理软件不支持某一些操作符,具体以查询相关文档为准。)
注:WHERE的筛选条件中,如果值为数字不要加‘’(例如上例中的5),如果值为字符类型则需要添加‘’(例如下例中的‘DLL01’)。

筛选出vend_id不等于‘DLL01’的商品。
接下来我们试下BETWEEN,筛选出prod_price位于5-10之间的商品。

指定在两个值之间,两个值需要使用AND连接。
使用BETWEEN检索出来的结果会包含两端的值,即如果prod_price等于5,或等于10的商品也会被包含进来。
[5,10]闭区间。
IS NULL,检索指定列名中的属性为空的行。
例如表中cust_email有两项为空,现在需要检索出cust_eamil为空的行。

结果如下:

参考资料:
《SQL必知必会》
1.1(SQL学习笔记)SQL基础的更多相关文章
- [SQL] SQL学习笔记之基础操作
1 SQL介绍 SQL 是用于访问和处理数据库的标准的计算机语言.关于SQL的具体介绍,我们通过回答如下三个问题来进行. SQL 是什么? SQL,指结构化查询语言,全称是 Structured Qu ...
- SQL学习笔记:基础SQL语句
目录 语句特点 进入数据库 基本查询语句 SELECT DISTINCT WHERE AND/OR/NOT :逻辑运算符 ORDER BY :排序 基本修改语句 INSERT:添加语句 UPDATE: ...
- PL/SQL学习笔记_01_基础
PL/SQL语句可以在Oracle客户端的 SQL窗口或者 command 窗口中运行 在SQL窗口中运行步骤同 SQL语句 在command 窗口中运行的步骤如下: 1)File—new com ...
- SQL学习笔记:基础教程
SQL语法 在表中选择列 select 列名 from 表名 选择所有列 select * from 表名 返回唯一值 select distinct 列名 from 表名 where select ...
- PL/SQL学习笔记_01_基础:变量、流程控制
PL/SQL语句可以在Oracle客户端的 SQL窗口或者 command 窗口中运行 在SQL窗口中运行步骤同 SQL语句 在command 窗口中运行的步骤如下: 1)File—new com ...
- SQL学习笔记——SQL初入门,Ubuntu下MySQL的安装
刚开始接触sql,于是准备在Ubuntu下学习sql,就跟着itercast的sql教程开始入门了. 下面只是我个人的记录,高手请绕道: 一. 在安装之前,我们可以用下面这个命令通过开放端 ...
- SQL学习笔记 SQL ORDER BY 关键字
SELECT column_name,column_nameFROM table_nameORDER BY column_name,column_name ASC|DESC; SELECT id, n ...
- SQL学习笔记——SQL中的数据查询语句汇总
where条件表达式 --统计函数 Select count(1) from student; --like模糊查询 --统计班上姓张的人数 select count(*) from student ...
- ORALCE PL/SQL学习笔记
ORALCE PL/SQL学习笔记 详情见自己电脑的备份数据资料
随机推荐
- c语言中网络字节序和主机字节序的转换
函数说明 相关函数:htonl, htons, ntohl 头文件:#include <netinet/in.h> 定义函数:unsigned short int ntohs(unsi ...
- perl中设置POST登录时的重定向
默认地, perl提交post登录时是不会重定向的 要让它重定向, 可以用如下方法: my $cookie = HTTP::Cookies->new(); push @{$ua->requ ...
- python模块 zipfile
zipfile是python里用来做zip格式编码的压缩和解压缩的,由于是很常见的zip格式,所以这个模块使用频率也是比较高的zipfile里有两个非常重要的class, 分别是ZipFile和Zip ...
- [Leetcode Week15] Add Two Numbers
Add Two Numbers 题解 原创文章,拒绝转载 题目来源:https://leetcode.com/problems/add-two-numbers/description/ Descrip ...
- dump_stack 实现分析【转】
转自:http://kernel.meizu.com/2017/03/18-40-19-dump_stack.html 1 简介 说起 dump_stack() ,相信从事 Linux 内核或者驱动相 ...
- 【Spring事务的事务属性】
大家都知道,Spring的声明式事务是通过事务属性来定义的,而spring的事务属性包含了5个方面:传播行为,隔离级别,是否只读,事务超时,回滚规则: 传播行为 传播行为,是属于事务边界相关的属性,定 ...
- webIcon
webIcon是我在拿别人的模板参考的时候我发现的一个东西,觉得挺不错的一个东西,但是后来发现用webIcon其实我也不知道是好还是不好,因为要用到字体,字体文件其实挺大的,所以当你要的图标不多的时候 ...
- 小程序 image跟view标签上下会有空隙
解决方案 就是可以在image那里设置vertical-align:top/bottom/text-top/text-bottom 原因:图片文字等inline元素默许是跟父级元素的baseline对 ...
- asp.net获取相对文件的绝对路径
HttpContext.Current.Server.MapPath("/sign/");
- Java学习笔记(三)——静态导入,package-info,Fall-through
[前面的话] 算是真正的放松了好几天时间,没有看任何书,没有任何任务,今天是过完年后的第一天上班时间,我又开始了我的学习之路,感觉还没有老,怎么心态越来越平静了,进入工作状态,就好好努力工作,新的一年 ...