SQL基础使用

SQL的概述

SQL全称: Structured Query Language,结构化查询语言,用于访问和处理数据库的标准的计算机语言。

SQL语言1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。

经过多年发展,SQL以成为数据库领域统一的数据操作标准语言,可以说几乎市面上所有的数据库系统都支持使用SQL语言来操作

简单来说,SQL语言就是操作数据库的专用工具

SQL的语法特征

在学习DDL、DQL等之前,我们先来了解SQL的语法特征。

  • SQL语言,大小写不敏感
  • SQL可以单行或多行书写,最后以;号结束
  • SQL支持注释:
    • 单行注释: -- 注释内容(--后面一定要有一个空格)
    • 单行注释:# 注释内容(# 后面可以不加空格,推荐加上)
    • 多行注释:/* 注释内容 */

SQL语言的分类

由于数据库管理系统(数据库软件)功能非常多,不仅仅是存储数据,还要包含:数据的管理、表的管理、库的管理、账户管理、权限管理等等。

所以,操作数据库的SQL语言,也基于功能,可以划分为4类:

  • 数据定义:DDL(Data Definition Language)
    • 库的创建删除、表的创建删除等
  • 数据操纵:DML(Data Manipulation Language)
    • 新增数据、删除数据、修改数据等
  • 数据控制:DCL(Data Control Language)
    • 新增用户、删除用户、密码修改、权限管理等
  • 数据查询:DQL(Data Query Language)
    • 基于需求查询和计算数据

SQL - DDL - 库管理

查看数据库

SHOW DATABASES;

使用数据库

USE 数据库名称;

创建数据库

CREATE DATABASES 数据库名称 [CHARSET UTF8];

删除数据库

OROP DATABASES 数据库名称;

查看当前使用的数据库

SELECT DATABASES();

SQL- DDL - 表管理

查看有哪些表

SHOW TABLES; 注意: 需要先选择库

创建表

CREATE TABLE 表名称(

列名称 列类型,

列名称 列类型,

列名称 列类型,

列名称 列类型,

......

)

删除表

DORP TABLE 表名称;

DORP TABLE IF EXISTS 表名称;

SQL - DML - 数据管理

DML是指数据操作语言,英文全称是Data Manipulation Language,用来对数据库中表的数据记录进行更新。

关键字:

  • 插入INSERT
  • 删除DELETE
  • 更新UPDATE

数据插入 INSERT

基础语法:

示例:

注意:

  1. 插入字符串数据,需要用单引号包围

  2. 插入全部列的时候,列的列表可以省略

数据删除

基础语法:

BELETE FROM 表名称 [WHERE 条件判断]

数据更新 UPDATE

基础语法

UPDATE 表名 SET 列 = 值 [WHERE 条件判断];

注意事项

字符串的值,出现在SQL语句中,必须要用单引号包围起来

SQL - DQL

基础数据查询

在SQL中,通过SELECT关键字开头的SQL语句,来进行数据的查询

基础语法:

SELECT 字段列名 | * FROM 表

含义就是: 从(FROM)表中,选择 SELECT)某些列进行展示

基础数据查询 - 过滤

查询也可以带有指定条件,语法如下:

SELECT 字段列名 | * FROM 表 WHERE 条件判断

分组聚合

分组聚合应用场景非常多,如:统计班级中,男生和女生的人数。

这种需求就需要:

  • 按性别分组
  • 统计每个组的人数

这就称之为:分组聚合。 基础语法:

SELECT 字段 | 聚合函数 FROM 表 [WHERE 条件判断] GROUP BY 列

聚合函数有

注意,SELECT中,除了聚合函数外,GROUP BY 了哪个列,哪个列在能出现在SELECT中。

结果排序

可以对查询的结果,使用ORDER BY 关键字,指定某个列进行排序,语法:

结果分页限制

同样,可以使用LIMIT关键字,对查询结果进行数量限制或分页显示,语法:

SQL语句

相关推荐
好吃的肘子1 小时前
MongoDB 应用实战
大数据·开发语言·数据库·算法·mongodb·全文检索
weixin_472339461 小时前
MySQL MCP 使用案例
数据库·mysql
lqlj22332 小时前
Spark SQL 读取 CSV 文件,并将数据写入 MySQL 数据库
数据库·sql·spark
遗憾皆是温柔3 小时前
MyBatis—动态 SQL
java·数据库·ide·sql·mybatis
未来之窗软件服务3 小时前
Cacti 未经身份验证SQL注入漏洞
android·数据库·sql·服务器安全
fengye2071613 小时前
在MYSQL中导入cookbook.sql文件
数据库·mysql·adb
Ailovelearning4 小时前
neo4j框架:ubuntu系统中neo4j安装与使用教程
数据库·neo4j
_星辰大海乀5 小时前
表的设计、聚合函数
java·数据结构·数据库·sql·mysql·数据库开发
未来之窗软件服务5 小时前
solidwors插件 开发————仙盟创梦IDE
前端·javascript·数据库·ide·仙盟创梦ide
yc_12245 小时前
SqlHelper 实现类,支持多数据库,提供异步操作、自动重试、事务、存储过程、分页、缓存等功能。
数据库·c#