1、初级了解SQL基础

简介: 1、初级了解SQL基础

接下来的几天会做一个sql语句的合集,从基本概念、用法到标准规范等等,今天主要讲sql的基础。

1.SQL语言分类

DDL (Data Definition Language)数据定义语句

创建数据库、创建二维表、修改二维表等。例如:create, alter, drop, truncate, rename。一般要先用DDL(create)创建二维表的列,才能使用后续其它类别的语句

DML (DATA MANIPULATION LANGUAGE)数据操纵语句

例如:insert,向已建二维表中插入行记录,update,修改行记录,delete删除行记录,应用非常广泛,银行刷卡,打电话等交易型数据均以DML语句的形式存在

DQL (Data Query Language)数据查询语句

SELECT语句,从数据库的二维表中查找数据。应用非常广泛,但前提是先用DML(insert)语句,向已建二维表中插入行记录,才能用select查找

DCL (DATA CONTROL LANGUAGE)数据控制语句

例如:grant, revoke,一般数据库为多用户系统,不同用户的权限不一样,可以访问的数据不一样,可以用DCL语句为给用户赋予或收回数据库的各类权限

TCL (TRANSACTION CONTROL LANGUAGE)事务控制语句

例如:commit; rollback; savepoint,只有支持事务的数据库管理系统或存储引擎TCL语句才能有效

2.MySQL数据类型

1.四种主要数据类型

数值

例如:身高、体重、工资、销量、房屋面积等数据,适用于数值类型存储* 字符

例如:姓名、公司名称、地址、商品描述、简历等数据,适用于字符类型存储

时间

例如:生日、订单日期、登录时间等数据,适用于时间类型存储

二进制

例如:照片、文件扫描件、音频、视频等数据,适用于二进制类型存储

2.常用数值数据类型

整数

int, 如:sno int, 学号为整数数字

int(N), 如:sno int(4),括号中的数字4为显示宽度和取值范围无关,如果学号为1,显示该学号时前面会补充3个空格,如果学号为99999,不影响存储,同样可以显示出来

小数

decimal(M,N),M代表总共的位数,N代表的是小数的位数,如:score decimal(4,1),表示score这列存储分数,一共有4位,其中小数部分占1位

3.常用字符数据类型

定长字符

char(N),如: sex char(6),存储性别占6位字符,如果只存储了一个字符‘男’,右边会填充5个空格,保证一共6个字符,但是最多只能存储6个字符

处理查询速度快,但是浪费存储空间

对于长度固定确经常作为查询条件的列,可以考虑使用char类型,例如:18位身份证号码

变长字符

varchar(N),如:sname varchar(20),存储学生姓名最多可以20个字符,不足20个字符不会填充空格,相对char类型节约存储空间

4.常用时间数据类型

date

用于仅仅需要存储日期数值时,不包括时间(时,分,秒)信息

默认格式:‘YYYY-MM-DD’, YYYY表示年,MM表示月,DD表示日

例如:birth date,存储学生的生日信息

datetime

用于即需要存储日期也需要存储时间信息时

默认格式:‘YYYY-MM-DD HH:MM:SS’, YYYY表示年,MM表示月,DD表示日,HH表示小时,MM表示分钟,SS表示秒

例如:login_time datetime,存储登录业务系统的日期和时间

5.数据类型选择要素

适当 (Appropriate) 需要以最适合数据类型来表示数据

例如:存储日期应当选择日期类型,而不要选择字符串类型。如果选择字符串类型存储,当需要日期计算的时候,需要用相关函数进行转换,记录数多的时候会浪费额外的系统资源

简洁 (Brief) 选择所用存储空间最少的数据类型。这可节省资源并提高性能

例如:存储学生姓名,应该选择varchar类型,而不要选择char类型,以节约存储空间

完整 (Complete) 选择的数据类型应分配有可存储特定项的最大可能值的充足空间

例如:存储地址信息时,使用varchar(N)来存储,N值给太小了,当地址字符串过长时会出现不能存储的情况,应当考虑最大的地址长度,给一个合适的值。

3.SQL语法

数据库表

一个数据库通常包含一个或多个表。每个表由一个名字标识(例如“客户”或者“订单”)。表包含带有数据的记录(行)。

下面的例子是一个名为 “Persons” 的表:

上面的表包含三条记录(每一条对应一个人)和五个列(Id、姓、名、地址和城市)。

SQL 语句

需要在数据库上执行的大部分工作都由 SQL 语句完成。

下面的语句从表中选取 LastName 列的数据:

SELECT LastName FROM Persons

结果集类似这样:

重要事项

一定要记住,SQL 对大小写不敏感

SQL 语句后面的分号

某些数据库系统要求在每条 SQL 命令的末端使用分号。

分号是在数据库系统中分隔每条 SQL 语句的标准方法,这样就可以在对服务器的相同请求中执行一条以上的语句。

如果使用的是 MS Access 和 SQL Server 2000,则不必在每条 SQL 语句之后使用分号,不过某些数据库软件要求必须使用分号。

相关文章
|
机器学习/深度学习 人工智能 算法框架/工具
《YOLOv10魔术师专栏》专栏介绍 & 专栏目录
【7月更文挑战第4天】 【原创自研模块】【多组合点优化】【注意力机制】 【主干篇】【neck优化】【卷积魔改】 【block&多尺度融合结合】【损失&IOU优化】【上下采样优化 】 【小目标性能提升】【前沿论文分享】【训练实战篇】
410 1
|
机器学习/深度学习 算法 数据挖掘
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
【机器学习】算法术语、决策函数、概率模型、神经网络的详细讲解(图文解释)
975 1
|
2月前
|
人工智能 监控 数据挖掘
AiPy发布第五期大模型适配度测评报告:Claude、GLM、豆包位居前三,美团LongCat落后
10月13日,AiPy发布《大模型适配度测评第五期报告》,覆盖20款国内外主流大模型,聚焦数据分析、编程开发、UI设计等十大真实场景。报告从成功率、资源消耗、速度等多维度综合评估,Claude-Sonnet-4以90%成功率位居榜首,GLM-4.5、Doubao-Seed-1.6等国产模型表现亮眼,展现中国AI技术进步。测评发现代码质量、中文支持、任务规划仍是主要挑战,为用户选型与模型优化提供重要参考。
|
9月前
|
数据采集 算法 前端开发
社交媒体分析:破解无限滚动的技术实践
本方案介绍了一种高效的数据采集技术,涵盖技术演化路径、传统痛点解决及架构设计。通过代理IP轮换、请求指纹管理与滚动加载模拟等核心模块,大幅提升请求成功率(98%)和数据完整率(91%),显著降低封禁概率(3.2%)。实战代码以微博热搜为例,展示如何结合动态User-Agent、Cookie管理与三级校验机制实现稳定采集。行业应用表明,该方案可将采集效率提升3.8倍,封禁率降至0.7次/日,助力热点事件早期捕捉。适配大规模任务需求,同时注重流量控制与异常处理,确保稳定性与安全性。
195 7
社交媒体分析:破解无限滚动的技术实践
|
域名解析 Kubernetes 网络安全
Kubernetes (k8s 1.23) 安装与卸载
Kubernetes (k8s 1.23) 安装与卸载
328 1
|
8月前
|
数据采集 运维 安全
Linux设备命令行运维工具WowKey问答
WowKey 是一款用于 Linux 设备运维的工具,可通过命令行手动或自动执行指令剧本,实现批量、标准化操作,如健康检查、数据采集、配置更新等。它简单易用,只需编写 WIS 指令剧本和 APT 帐号密码表文件,学习成本极低。支持不同流派的 Linux 系统,如 RHEL、Debian、SUSE 等,只要使用通用 Shell 命令即可通吃Linux设备。
|
数据可视化 Scala Python
Jupyter 在教育领域的应用与影响
【8月更文第29天】随着数字技术和互联网的发展,教育行业正在经历一场深刻的变革。传统的面对面教学模式逐渐被更加灵活和高效的方式所补充或替代。其中,Jupyter Notebook 作为一种开放源代码的 Web 应用程序,为教学提供了强大的工具,尤其是在 STEM(科学、技术、工程和数学)领域。本文将探讨 Jupyter 在教育中的应用以及它如何改变了教学方式,并提供一些实际的代码示例来展示其功能。
306 1
|
传感器 数据采集 自动驾驶
世界模型新突破!极佳科技提出DriveDreamer4D,首次利用世界模型增强4D驾驶场景重建效果
极佳科技提出DriveDreamer4D,一种利用世界模型先验知识增强4D驾驶场景重建的方法。它通过生成符合交通规则的新轨迹视频,显著提升了自动驾驶系统的测试数据质量和时空一致性,相较于现有方法在多项指标上实现显著改进,为自动驾驶技术发展带来新机遇。
308 21
|
弹性计算 安全 容灾
阿里云DTS踩坑经验分享系列|使用VPC数据通道解决网络冲突问题
阿里云DTS作为数据世界高速传输通道的建造者,每周为您分享一个避坑技巧,助力数据之旅更加快捷、便利、安全。本文介绍如何使用VPC数据通道解决网络冲突问题。
492 0
|
负载均衡 网络协议 算法
iptables 具体介绍
iptables 具体介绍

热门文章

最新文章