SQL基础语句语法

一直以来学习编程,总是重视理论,导致实操根本跟不上,只会纸上谈兵,这是我一直以来非常担心的事情,所以现在我要开始改变学习策略,主张实战演练,基础理论是根基,但是完整的项目才是入行的前提。
SQL无论面试那家公司都是必问的点之一,所以熟练掌握SQL语句对以后的HQL有很大的帮助。
学习交流转行的小伙伴可以加VX:WL1179952622一起交流,人够了我们建群交流

SQL指令

SELECT

查询方式

select *
from 表名
where 条件

DISTINCT

将表中重复的字段去掉,显示不重复的字段,简单来说就是去重

SELECT DISTINCT “栏目名”
FROM “表名”

WHERE

表示选择条件

SELECT “字段”
FROM “表名”
WHERE “条件”

AND|OR

WHERE可以有条件的进行查询,AND|OR则是可以选择多个条件进行

SELECT ‘字段’ FROM ‘表名’ WHERE ‘条件’ {[AND|OR] ‘条件’}+
AND | OR

IN

在两个情况下会用IN
当你想要查询的字段中含有一个目标,则可以使用IN来连接
其次当你想要查询的字段中含有多个目标想要查询,则用IN直接进行查询即可,实例如下

在这里插入图片描述

BETWEEN

从一个范围(range)内抓出资料库中的值

SELECT ‘字段’ FROM ‘表名’
WHERE ‘条件’
BETWEEN ‘范围一’ AND '范围二实例

LIKE

Like是另一个在WHERE子句中会用到的指令,基本上,LIKE能让我们一句一个模式(pattern)来找出我们的资料,相对来说,在运用IN的时候,我们完全的知道我们需要的条件,在运用BETWEEN的时候,我们则是列出一个范围,LIKE的语法如下:

SELECT ‘字段’
FROM ‘表名’
WHERE ‘栏目名’ LIKE {模式}

比如:JECKY,在模式中可以写成 %ck%,那么在查询中可以查出包含ck的字段

实例

ORDER BY

一个排列的语句

SELECT ‘栏目名’
FROM ’表格名‘
WHERE ’条件‘
ORDER BY ’‘栏目名 [ ASC, DESC ]
注意:ASC=从小往大排序 DESC:从大到小排序
实例

函数

数据库中许多资料都是已数字的形态存在,一个很重的用途就是要能够对这些数字做一些运算,例如将它们总和起来,或是找出它们的平均值。SQL有提供一些这一类的函数,他们是:

AVG 平均
COUNT 计数
MAX 最大值
MIN 最小值
SUM 总和
实例

COUNT

用来计数,有多少条数据

SELECT COUNT ‘栏目名’
FROM ’表名‘
实例
3

GROUP BY

用sum算出的营业额,如果我们需求变成是要算出每一间店(store_name)的营业额(sales),那么怎么办呢?这个情况下我们要做到两件事,第一件事我们对于store_name 及Sales 这个两个栏目都要选出。第二,我们需要确认所有的sales都要依照各个store_name来分开计算。这个语法为:

SELECT ‘栏位一’,SUM(‘栏位二’)
FROM ‘表格名’
GROUP BY ‘栏位一’
在这里插入图片描述

HIVING

这个函数要考,重点掌握,在GROUP BY中我们可以掌握按要求进行SUM的排序,但是这里怎么筛选SUM的条件?这里就用到了HIVING

SELECT ‘栏目一’,SUM(‘栏目二’)
FROM ‘表名’
GROUP BY’栏目一’
HAVING(函数条件)
实例

ALIAS

alias(别名),在SQL中最常用到的别名有两种,栏位别名及表格别名。
简单来说。栏位别名的目的就是为了让SQL产生结果易读,在之前的例子中,每当我们有营业额总和时,栏位名都是SUM(sales),虽然在这个情况下没有什么问题,可是如果这个栏位不是一个简单的总和,而是一个复杂的计算,那栏位名就没有这么易懂了,若我们用栏位别名的话,既可以确认结果中的栏位别名是简单易懂的。
第二种别名是表格别名,要给一个表格取一个别名,只要在FROM子句中的表格名后空一格,然后再列出要用的表格名接可以了,这在我们要用的SQL有数个不同的表格中获取资料时是很方便的,这一点我们在之后谈到连接(join)时会看到

SELECT ‘表格别名’ ’栏位名‘ ’栏位别名‘
FROM ’表格名‘ ,’表格别名‘
实例

表格连接

现在进行JOIN连接的概念,之前都是一张表格进行处理,现在有两个表格进行处理。
假设现在有两张表
在这里插入图片描述
而我们要知道每一区(region_name)的营业额(sales),Geography这个表格告诉我们每一个区有哪些店,而Store_Information告诉我们每一个店的营业额。若我们要知道每一个店的营业额,我们需要将这个两个不同表格中的资料串联起来,当我们仔细了解这两个表格后,我们会发现它们可经由一个相同的栏位,store_name连接起来,我们先将SQL句列出,之后再讨论每一个子句的意义。

SELECT A1.region_name REGION ,SUM(A2.Sales) SALES
FROM Geography A1,Store,Information A2
WHERE A1.store_name = A2.store_name
GROUP BY A1.region_name在这里插入图片描述
在这里插入图片描述

外部连接

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

CONCATENATE

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

点个赞可好-------> 参考连接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值