sql基础语法及常见函数等

一、SQL语句的种类

1、DDL(Data Definition Language,数据定义语言):

CREATE:用于创建数据库和表等对象。
DROP:用于删除数据库和表等对象。
ALTER:用于修改数据库表的结构,如添加、删除或修改列。

2、DML(Data Manipulation Language,数据操纵语言):

SELECT:用于从数据库中检索数据。
INSERT INTO:用于向数据库中插入新的数据行。
UPDATE:用于修改数据库表中已存在的数据。
DELETE:用于从数据库表中删除数据。

3、DCL(Data Control Language,数据控制语言):

GRANT:用于赋予用户操作权限。
REVOKE:用于取消用户的操作权限。
COMMIT:用于确认对数据库中的数据进行的变更。
ROLLBACK:用于取消对数据库中的数据进行的变更。

二、SQL的基本书写规则

1SQL语句要以分号(;)结尾。
2SQL语句不区分大小写,但通常为了可读性,关键字大写,表名和列名小写。
3、常数的书写方式是固定的,字符串用单引号括起来,日期也可以用单引号括起来,数字则直接书写。
4、单词需要用半角空格或者换行来分隔,不能使用全角空格。

三、常用SQL语句的语法

1、SELECT语句:

基本语法:SELECT 列名1, 列名2, ... FROM 表名;
检索所有列:SELECT * FROM 表名;
去除重复值:SELECT DISTINCT 列名 FROM 表名;

2、WHERE子句:

用于筛选满足指定条件的记录。
语法:SELECT 列名1, 列名2, ... FROM 表名 WHERE 条件;

3、AND & OR运算符:

AND运算符表示同时满足所有条件。
OR运算符表示满足任一条件。
语法示例:SELECT * FROM 表名 WHERE 条件1 AND 条件2;SELECT * FROM 表名 WHERE 条件1 OR 条件2;

4、ORDER BY关键字:

用于对结果集进行排序。
语法:SELECT 列名1, 列名2, ... FROM 表名 ORDER BY 列名1 ASC|DESC, 列名2 ASC|DESC;

5、INSERT INTO语句:

用于向表中插入新记录。
语法:INSERT INTO 表名 (列名1, 列名2, ...) VALUES (1,2, ...);

6、UPDATE语句:

用于修改表中的记录。
语法:UPDATE 表名 SET 列名1 =1, 列名2 =2, ... WHERE 条件;

7、DELETE语句:

用于从表中删除记录。
语法:DELETE FROM 表名 WHERE 条件;

四、进阶语法

1、SELECT TOP/LIMIT/ROWNUM子句:

用于限制查询结果的记录数。
SQL Server/MS Access:SELECT TOP number|percent 列名 FROM 表名;
MySQL:SELECT 列名 FROM 表名 LIMIT number;
Oracle:SELECT 列名 FROM 表名 WHERE ROWNUM <= number;

2、LIKE操作符:

用于在WHERE子句中搜索列中的指定模式。
语法:SELECT 列名 FROM 表名 WHERE 列名 LIKE 模式;

3、IN操作符:

允许在WHERE子句中规定多个值。
语法:SELECT 列名 FROM 表名 WHERE 列名 IN (1,2, ...);

4、BETWEEN操作符:

用于选取介于两个值之间的数据范围内的值。
语法:SELECT 列名 FROM 表名 WHERE 列名 BETWEEN1 AND2;

5、SQL别名:

可以为表或列指定别名,以便在查询中引用。
列的别名语法:SELECT 列名 AS 别名 FROM 表名;
表的别名语法:SELECT 列名 FROM 表名 AS 别名;

6、SQL连接(JOIN):

用于将来自两个或多个表的行结合起来。
常见的连接类型有INNER JOINLEFT JOINRIGHT JOIN等。

五、常见的函数

1. 聚合函数

聚合函数主要用于对一组值执行计算,并返回单个值。常见的聚合函数包括:

AVG(column):返回某列的平均值。
COUNT(column):返回某列的行数(不包括NULL值)。COUNT(*)则返回被选行数,包括NULL值。
MAX(column):返回某列的最大值。
MIN(column):返回某列的最小值。
SUM(column):返回某列数值的总和。

2. 字符串函数

字符串函数用于对字符串数据进行操作。常见的字符串函数包括:

CONCAT(str1, str2, ...):将两个或多个字符串连接成一个字符串。
LENGTH(str)LEN(str):返回字符串的长度。
UPPER(str):将字符串转换为大写。
LOWER(str):将字符串转换为小写。
SUBSTR(str, start, length) 或 SUBSTRING(str, start, length):返回字符串的子串。
REPLACE(str, from_str, to_str):将字符串中的子串替换为另一个子串。
TRIM(str):去除字符串两端的空格。

3. 数学函数

数学函数用于执行数学计算。常见的数学函数包括:

ROUND(num, decimal_places):将数字四舍五入到指定的小数位数。
ABS(num):返回数字的绝对值。
CEIL(num) 或 CEILING(num):向上取整。
FLOOR(num):向下取整。
MOD(x, y):返回x除以y的余数。
RAND():返回01之间的随机浮点数。

4. 日期和时间函数

日期和时间函数用于处理日期和时间数据。常见的日期和时间函数包括:

NOW():返回当前的日期和时间。
CURDATE():返回当前的日期。
CURTIME():返回当前的时间。
YEAR(date):返回日期中的年份。
MONTH(date):返回日期中的月份。
DAY(date):返回日期中的天数。
DATE_ADD(date, INTERVAL value unit):将日期加上指定的时间间隔。
DATE_SUB(date, INTERVAL value unit):从日期减去指定的时间间隔。
DATEDIFF(date1, date2):计算两个日期之间的天数差。

5. 转换函数

转换函数用于将一种数据类型转换为另一种数据类型。常见的转换函数包括:

CAST(expression AS data_type):将表达式转换为指定的数据类型。
CONVERT(data_type[(length)], expression [, style]):将表达式转换为指定的数据类型,并可选择性地指定样式。

6. 系统函数

系统函数用于返回数据库服务器的系统信息。常见的系统函数包括:

VERSION():返回数据库的版本号。
DATABASE():返回当前数据库的名称。
USER()SYSTEM_USER:返回当前数据库用户的名称。

7. 流程控制函数

流程控制函数用于在SQL查询中执行条件逻辑。常见的流程控制函数包括:

IF(condition, true_value, false_value):如果条件为真,则返回true_value;否则返回false_value。
CASE WHEN condition THEN result [WHEN ...] [ELSE result] END:根据条件返回不同的结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1540622.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

Ping32加密利器 vs ipguard,企业数据防护的实战对比

在数字化时代&#xff0c;企业数据的安全防护已成为不可忽视的重要议题。随着数据泄露事件的频发&#xff0c;企业迫切需要采用高效、可靠的数据防泄漏解决方案来保护其敏感信息。Ping32和IP-Guard作为市场上备受瞩目的两款数据保护工具&#xff0c;各自以其独特的功能和优势赢…

深入分析几个难以理解的Comparator源码

1.分析comparing单参数方法 网上很多帖子说实话&#xff0c;不咋地&#xff0c;讲的不细节&#xff0c;抄来抄去&#xff0c;就让我这个大二的垃圾&#xff0c;给大家梳理一下Comparator这几个难以理解public static方法吧。 1.1函数式接口Function 这个函数是使用的函数式编程…

OrCAD使用,快捷键,全选更改封装,导出PCB网表

1 模块名称 2 快捷键使用 H: 镜像水平 V&#xff1a;镜像垂直 R: 旋转 I: 放大 O&#xff1a; 放小 P&#xff1a;放置元器件 W&#xff1a; 步线 B&#xff1a; 总线&#xff08;无电气属性&#xff09; E: 总线连接符&#xff08;和BUS一起用&#xff09…

图的应用(关键路径)

基于你设计的带权有向无环图&#xff0c;写出所有合法的关键路径&#xff0c;并算出关键路径总长度 文字描述&#xff1a;关键路径总长度的现实意义是什么&#xff1f; 1.关键路径 总长度454316 2.现实意义 从源点到汇点的所有路径中&#xff0c;具有最大路径长度的路径称…

如何选择OS--Linux不同Distribution的选用

写在前言&#xff1a; 刚写了Windows PC的不同editions的选用&#xff0c;趁热&#xff0c;把Linux不同的Distribution选用也介绍下&#xff0c;希望童鞋们可以了解-->理解-->深入了解-->深入理解--...以致于能掌握特定版本的Linux的使用甚者精通。……^.^…… so&a…

云手机的便捷性和安全性体现在哪?

随着5G技术的迅速发展&#xff0c;云手机在游戏、电商以及新媒体营销等领域中的应用日益广泛。它不仅能够显著降低成本、提升效率&#xff0c;还随着边缘计算和云技术的进步&#xff0c;展现出无限的增长潜力。 云手机的便捷性体现在哪里&#xff1f; 云手机的便捷性毋庸置疑。…

网关登录校验(2)----网关如何将用户信息传递给微服务

1.微服务获取用户信息 现在&#xff0c;网关已经可以完成登录校验并获取登录用户身份信息。但是当网关将请求转发到微服务时&#xff0c;微服务又该如何获取用户身份呢&#xff1f; 由于网关发送请求到微服务依然采用的是Http请求&#xff0c;因此我们可以将用户信息以请求头…

MySQL高阶1892-页面推荐2

目录 题目 准备数据 分析数据 总结 题目 您正在为一个社交媒体网站实施一个页面推荐系统。如果页面被user_id的 至少一个朋友喜欢 &#xff0c;而 不被user_id喜欢 &#xff0c;你的系统将 推荐 一个页面到user_id。 编写一个解决方案来查找针对每个用户的所有可能的 页面…

LTE和NR空口技术区别

LTE和NR空口技术区别

一起对话式学习-机器学习03——模型评估与模型选择

【一】前言 这一部分其实已在第二节中介绍到&#xff0c;这节起到回顾归纳的作用。 【二】训练误差与测试误差 首先&#xff0c;在分类问题中&#xff0c;有误差率和准确率两个概念&#xff0c;二者和为1。 误差率&#xff1a;分类错误的样本数占总数的比例。 其次&#xff0c…

【Node.js Vue】还在为选什么乐器发愁?乐器推荐系统帮你解决难题,基于用户行为分析的智能推荐,让你不再为音乐器材烦恼

&#x1f34a;作者&#xff1a;计算机毕设匠心工作室 &#x1f34a;简介&#xff1a;毕业后就一直专业从事计算机软件程序开发&#xff0c;至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长&#xff1a;按照需求定制化开发项目…

用AI制作专属欧美漫画头像!FLUX大模型-漫画情侣lora应用教程

​ ​ 新上线了一个漫画风格的lora《漫画情侣&#xff08;欧美黄金时代风&#xff09;v1.0》 感兴趣的朋友可以去下载使用&#xff0c;下载是免费的。 下面跟大家说一下这个lora的特点、使用方法以及这个lora的延伸应用&#xff1a;欧美漫画头像制作 lora风格特点 欧美漫画/人…

【2024/09/20更新】植物大战僵尸杂交版V2.5下载

植物大战僵尸杂交版V2.5 2.5版本更新公告&#xff1a; 增加新关卡– 益智模式–两面夹击模式关卡 挑战模式关卡 增加新铲子–骷髅铲子 --银币购买-挖掉植物触发亡语或召唤骷髅僵尸 增加新植物– 4张白卡植物-通过两面夹击获得 2张金卡植物和4张星卡植物 游戏调整– 调整…

单片机——ADC采样

1、什么是ADC采样&#xff1f; ADC是指将模拟信号转换成数字信号的过程。通俗理解ADC采样就是采集电路中的电压&#xff0c;通过数值的方式表现出来。以STM32F103系列为例&#xff0c;它可以反应0~4095&#xff0c;换句话说&#xff0c;它采集的电压数值上表现为0~4095&#xf…

动态线程池(四)

动态线程池 dtp生命周期管理 生命周期相关类图 DtpExecutor EagerEtpExecutor OrderedDtpExecutor TaskWrapper任务包装器 MdcRunnable TaskWrappers NotifyEnum NoticeManager通知管理器 InvokerChain调用链

Unborn安装CUDA Toolkit 12.2

Unborn安装CUDA Toolkit 12.2 Unborn安装CUDA Toolkit前言下载安装配置验证 Unborn安装CUDA Toolkit 前言 今天在某台Unborn系统上安装某个依赖库时&#xff0c;提示环境中缺少CUDA_HOME环境变量&#xff0c;导致在安装某些依赖时出现问题。具体异常如下&#xff1a; Lookin…

什么是大数据?一文讲清大数据的概念、演进、趋势、产业链及关键技术!

前言 数字经济浪潮下&#xff0c;数据已成为当今最为核心的资源之一&#xff0c;数据成为推动企业和社会发展、转型、创新的新型生产要素。 大数据这个词&#xff0c;不管您是不是相关行业的从业者&#xff0c;也都听过无数遍了&#xff0c;但对于大多数人来说&#xff0c;并…

共享单车轨迹数据分析:以厦门市共享单车数据为例(五)

先来聊聊啥是共享单车电子围栏&#xff1f; 共享单车电子围栏是一种基于地理位置技术的虚拟边界&#xff0c;用于管理和规范共享单车的停放和使用。这种技术通过在地图上划定特定区域&#xff0c;帮助用户了解哪些地方可以停车&#xff0c;哪些地方不能停车&#xff0c;从而减…

博导团队指导、解读实验结果、SCI论文润色

表观组&#xff1a; DAP-seq:转录因子-DNA互作研究工具 ATAC-seq :染色质开放程度研究工具 H3K4me3 ChIP-seq:组蛋白甲基化修饰工具 BS-seq :DNA甲基化研究工具 H3K27ac ChIP-seq:组蛋白乙酰化修饰研究工具 Cut&Tag:转录因子研究工具 ChIP-seq:转录因子-DNA互作工具 互作组…

HarmonyOS学习(十三)——数据管理(二) 关系型数据库

文章目录 1、基本概念2、运行机制3、默认配置与限制4、接口说明5、实战&#xff1a;开发“账本”5.1、创建RdbStore5.2、创建数据库5.3、增加数据5.4、删除数据5.5、修改数据5.6、查询数据5.7、备份数据库5.8、恢复数据库5.9、删除数据库 官方文档地址&#xff1a; 通过关系型…