SQL基础学习总结:3(select语句基础&&算术运算符&&比较运算符)

select语句基础

列的查询

从表中选取数据时需要使用select语句,通过select语句查询并选取出必要数据的过程称为匹配查询查询
语法结构如下:

select <列名1>,<列名2>,<列名3>...
from <表名>;

该select语句包含了select和from两个子句
通过以上语句我们就可以查询某个表的某一列的内容了,如下图:

查询单列:
在这里插入图片描述
查询多列:
在这里插入图片描述
查询结果中列的顺序和select子句中的顺序相同,如下图:
在这里插入图片描述
我们如果想要快速查询表格中的所有的列时,可以使用代表所有列的"*",语法结构如下:

select *
from <表名>;

例:
在这里插入图片描述
当然,如果使用星号的话,就无法设定列的显示顺序了,这时将会按照创建表时的列的顺序显示。

注意:在查询之前要先选择使用所查询表所在的数据库,否则将会出现错误,如下图:
在这里插入图片描述
选择使用数据库的语句十分简单,语法结构如下:

use <数据库名称>;

例:
在这里插入图片描述
当出现了Database changed语句后你就可以对该数据库里面的表格进行修改了。

为列设置别名

SQL语句可以使用AS关键字为列设置别名,语法结构如下:

select <列名1> AS <别名1>,
	   <列名2> AS <别名2>,
	   ...
from <表名>;

别名可以使用中文,使用中文时需要用**双引号(")**将中文别名括起来。
例:在这里插入图片描述

常数的查询

我们往表里面输入的信息为常数,常见常数有字符串常数数字常数日期常数
我们同样可以使用select语句查询出这些常数,语法结构如下:

select 

例:在这里插入图片描述
注意:在SQL语句中使用字符串或者日期常数时,必须使用单引号( ’ )将其括起来

从结果中删除重复行

当我们想要查看商品一共有多少个种类时,我们可以选择删除重复的数据来实现。
删除重复行时,就可以通过在select子句中使用distinct来实现,语法结构如下:

select distinct <列名>
from <表名>;

例:
在这里插入图片描述
注意:在使用distinct时,null也被视为一类数据。

我们也可以多列使用distinct,此时,会将多个列的数据进行组合,将重复的数据合并到一块,语法结构如下:

select distinct <列名1>,<列名2>,...
from <表名>;

注意:distinct关键字只能用在第一个列名之前。

根据where子句来选择记录

select语句可以通过where子句来指定查询数据的条件,可以查询出只符合该条件的记录,语法结构如下:

select <列名>,...
from <表名>
where <条件表达式>;

该语句的原理是:先通过where子句查询出符合指定条件的记录,然后再选取出select语句指定的列

例:
在这里插入图片描述
例子中的”product_type=‘文具’“就是用来表示查询条件的表达式(条件表达式),上述条件就是将product_type列的值和’文具’进行比较,判断是否相等。

其实也可以这样使用,如下图:
在这里插入图片描述
像上图中只选取出了product_name列,并没有product_type列的内容。

注意:SQL中子句的书写顺序是固定的,不能随意更改。
随意更改子句的顺序会造成错误,如下图所示:
在这里插入图片描述

注释的书写方法

注释是SQL语句中用来标识说明或者注意事项的部分,注释对SQL的执行没有任何影响。
注释的书写方法分两种:

  • 一行注释
    书写在“- -”之后,只能写在同一行
  • 多行注释
    书写在“/* ” 和“ */”之间,可以跨多行

注意:“- -”之后需要加入一个空格,不加的话就不会被认为是注释。
例:
一行注释:
在这里插入图片描述
多行注释:
在这里插入图片描述

算术运算符和比较运算符

算术运算符

SQL语句中可以使用计算表达式。
例:
在这里插入图片描述
从上图的例子中我们可以看出来,"product_price"进行了一个乘法的运算,事实上我们还可以进行以下的运算:

含义运算符
加法运算+
减法运算-
乘法运算*
除法运算/

四则运算所使用的运算符称为算术运算符
当然,SQL语句中也可以像平常运算表达式那样使用括号(),优先进行运算。

注意:所有包含null的计算,其结果一定是null。

比较运算符

比较运算符

运算符含义
=和~相等
<>和~不相等
>=大于等于~
>大于~
<=小于等于~
<小于~

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

比较运算符用在日期数据上

比较运算符还可以使用在日期上,如下图:
在这里插入图片描述
上图中的“regist_date<‘2020-05-19’”表示在2020-05-19之前的日期。

比较运算符用在字符数据上

我们创建了一个新表,里面只有一个字符型的列,如下图:
在这里插入图片描述
往表里面插入数据
在这里插入图片描述
表的内容
在这里插入图片描述
使用比较运算符对这些字符型数据进行比较

用数字和字符串进行比较

如果字符串开头带有数字,则和字符串开头的数字进行比较,如下图:
在这里插入图片描述

字符串和字符串进行比较

比较字符串的ASCLL码值的大小,如下图:
在这里插入图片描述

不能对NULL使用比较运算符(IS NULL运算符和IS NOT NULL运算符)

我们往表中插入了两个价格为NULL的数据,如下图:
在这里插入图片描述
在表中进行比较
在这里插入图片描述
在这里插入图片描述
我们可以看到,无论如何进行比较,两个价格为NULL的商品都不会出现。
就算我们直接使用“=”也不会出现…
在这里插入图片描述
其实SQL中提供了专门用来判断是否为NULL的IS NULL运算符,我们可以通过它选取价格为NULL的商品,如下:
在这里插入图片描述
当然,既然可以选取是NULL的,也可以选取不是NULL,使用IS NOT NULL运算符即可,如下图:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值