SQL中的查询命令

SQL:Structured Query Language 结构话查询语言

第一个命令:(命令的结尾必须是, sql命令是不区分大小写的

show databases; 列出服务器管理的数据库

第二个命令:(数据库名必须是唯一)

use +数据库名 ; 进入到哪个数据库中

第三个命令:

show tables; 显示该数据库中所有的表

第四个命令:

show columns form 表名;  显示该表所有的列名

 Field: 列名称

Type: 列数据类型

Key:指示列是否被索引

Default:分配给列的默认值

Extra:可能包含任何有关给定列的附加信息

第五个命令:

select 列名 from 表名;  显示该表中的某一列

允许一次性查询多行,中间用逗号隔开 

 第六个命令:

select * from 表名  ;   查询表中的所有内容 ( *指代所有列的意思

 第七个命令:

select  distinct  * from 表名  ;   查询表中的所有内容 重复的内容只显示一个

  第八个命令:

select  列名 form 表名 limit 数量 ;      查询表中某一列的几行数据

 第九个命令:

select  列名 form 表名 limit   初始位置,显示几行数据 ;      查询表中从第几列开始,几行的数据

(sql 中的数据行从0开始)

 第十个命令:

select 列名 form 表名 order by 列名         查询个某一列  以某一列作为排序的方法

(默认是升序排列)

 

 可以以两列作为排序的方式。

select 列名 form 表名 order by 列名1,列名二;  首先以列名1排序,列名1一致的使用列名二排序

where 语句做查询:

select  列名 from 表名 where 列名=某个条件   

依据某个条件 从表中查询数据

 where 语句中可以使用的运算符:

    =    等于      <>   不等于    >大于     <小于   >=大于等于     <=小于等于

 between  在某个范围内     like  搜索某种模式    in  制定针对某个列的多个可能值。

练习:

 

 between 操作符选取介于两个值之间的数据范围内的值,一些值可以使数值,文本,日期;

中间使用   and  连接

文本注意使用单引号

where 语句中可以使用的逻辑运算符:

逻辑运算符可用于组合两个布尔值,并返回true ,false ,null 的结果

可以使用一下的运算符

and         如果两个表达式结果都为TRUE 则为TRUE

or           如果任意一个表达式的值为TRUE 则为TRUE

in          如果操作数等于表达式列表之一,则为TRUE

not        如果表达式结果为TRUE 则返回FALSE      反之亦然

使用select 语句检索数据时,请使用where子句中的 逻辑运算符来组合多个条件。

如果要选择满足所有给定条件的行,请使用逻辑运算符and

 练习:

 

 and与or  结合使用 注意中间有()

IN   运算符 :

当你需要比较具有多个值的列时,需要使用IN 运算符    

IN运算符允许您在Where 子句中规定多个值

相反用法:

这种方式类似 逻辑运算or :

concat函数

用于连接两个或多个文本值,并返回连接字符串(实际上就是把两列连接起来输出

中间使用自定义的字符连接他们

AS 关键字   通常与concat 函数配合使用

将concat 连接起来的列名结合起来,作为一个新的列名输出,不改变原表的列名。

单独使用

算术运算符 

+ - * /

在输出结果时,可以对数值进行 加减乘除  ,只对显示的结果起作用,不改变表原来的值大小。

 

 upper()      lower() 函数  

将挑选出来的某一列的字符串的字母转换成大小写。

 sqrt ()  和 avg()函数

返回选中的列的平方根和平均值

平方根

 均值

 sum() 

 选中列的总和

 count 

返回选中的列有多少行

高级查询

子查询 : 当一个查询的结果是另一个查询的条件时,称为子查询。

 以后面括号里面的均值 为筛选条件,做查询,做最后的结果以列total 数值从大到小排列

DESC  代表  大-小  

ASC   代表 小-大   默认

like 操作符    模糊匹配

 like操作符用于在where字句中搜索列中的制定模式

sql的模式匹配允许你使用  ‘-’  匹配任何单个字符,而使用‘%’匹配任何数目的字符(包括0个字符)

%通配符可以在同一模式中多次使用。

min函数 

返回指定列的最小值

多表查询:

到目前为止显示的所有查询,一次只能从一个表中选择,SQL 的最有利的特征之一就是能够组合来自两个或多个表的数据。

在下面的两个表,customers表存储有关客户的信息,orders表 存储有关订单及其相应金额的信息。

 

 在SQL中,‘表连接’表示组合来自两个或多个表的数据,表连接创建一个临时表,显示连接表中的数据。

例如:

 涉及到两个表的不同列名,需要使用 表名+.+列名的形式,来区分。(完全限定名称)

在from 中通过 逗号分隔 来指定多个表名。

表连接(将两个表合成一个表,之后可以进行查询操作)

以下是可以在sql中使用的连接类型:

内连接:(inner join )

左连接:(left join    )

右连接:(right join )

sql inner join 语法:   

(以两个表的id 为条件 ,将两个表合并成一个表,内连接只保留  id 相同的记录)

on 关键字 用于指定内部连接的条件

在查询具体字段时需要,带上他是属于哪个表,这种方法,避免重名的时候不知道查询哪个字段

 

 左连接 

用法与内连接类似,不同的是以左边的表为准,保留左边表所有的数据,右边表中如果有相同条件的记录 就保留,否则就删除。

 右表数据没有对应的记录,填为空。

右连接:与左连接类似

 

 插入数据:

SQL 表将数据存储在行中,一行接一行。inert into 语句用于向数据库中的表添加新的数据行。

SQL insert into 语法如下:

insert into  表名  values(数据1,数据2 ,数据3,。。。)   

注意:确保值的顺序与表中列的顺序相同。这种插入方式必须保证表格有多少列,插入的数据就得是多少列

查询表中的每一列数据的类型

 另一种插入方式 (需要插入什么数据,把相应的列名带上就可以  )

 

  • 4
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值