MySQL(一)基础语法
MySQL书写规则
- SQL关键字不区分大小写
- 某些数据库系统要求每个SQL语句的末尾都有一个分号,分号是分隔数据库中每个 SQL 语句的标准方法
- SQL要求在文本值周围加上单引号,数字字段不应用引号括起来
SELECT语句
- 用于从数据库中选择数据,返回的数据存储在结果表中,称为结果集
SELECT column1, column2, ...
FROM table_name;
SELECT * FROM table_name;
- 选择所有列
SELECT DISTINCT语句
- 用于仅返回不同值,在表中,一列通常包含许多重复值,该语句可以列出不同的值
SELECT DISTINCT column1, column2, ...
FROM table_name;
WHERE子句
- 用于筛选记录,提取满足指定条件的数据
SELECT column1, column2, ...
FROM table_name
WHERE condition;
- 使用关键字选择不是'Berlin'的所有记录
SELECT * FROM Customers
WHERE NOT City = 'Berlin';
1、WHERE子句中的运算符
运算符 | 描述 |
---|---|
= | 等于 |
<> | 不等于,在 SQL 的一些版本中,该操作符可被写成!= |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
BETWEEN | 在某个范围内 |
LIKE | 搜索某种模式 |
IN | 指定针对某个列的多个可能值 |
AND、or和NOT运算符
- WHERE子句可以与AND、or和NOT运算符组合使用
- AND和OR运算符用于基于一个以上的条件对记录进行过滤
(1)如果以AND分隔的所有条件均为TRUE,则运算符将显示一条记录
(2)如果以OR分隔的任何条件为TRUE,则运算符将显示一条记录 - 如果条件为NOT TRUE,则运算符将显示一条记录
1、AND语法
SELECT column1, column2, ...
FROM table_name
WHERE condition1 AND condition2 AND condition3 ...;
2、OR语法
SELECT column1, column2, ...
FROM table_name
WHERE condition1 OR condition2 OR condition3 ...;
3、NOT语法
SELECT column1, column2, ...
FROM table_name
WHERE NOT condition;
- 从Customers中选择country不是“Germany”也不是“USA”:
SELECT * FROM Customers
WHERE NOT Country = 'Germany' AND NOT Country = 'USA';
ORDER BY
- 该关键字用于对结果集进行升序或降序
- 默认情况下,该关键字按升序对记录进行排序。要按降序对记录进行排序,请使用ORDER BY 关键字 DESC
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC;
INSERT INTO语句
- 用于在表中插入新记录
1、指定要插入的列名称和值:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
2、如果要为表的所有列添加值,则无需指定SQL查询中的列名。但是,请确保values的顺序与表中的列的顺序相同
INSERT INTO table_name
VALUES (value1, value2, value3, ...);
NULL值
- 具有NULL值的字段是没有值的字段
- 如果表中的字段是可选的,则可以插入新记录或更新记录而不向此字段添加值,该字段将保存为NULL值
- NULL值不同于零值或包含空格,具有NULL值的字段是已留空的字段
1、IS NULL语法
SELECT column_names
FROM table_name
WHERE column_name IS NULL;
2、IS NOT NULL语法
SELECT column_names
FROM table_name
WHERE column_name IS NOT NULL;
UPDATE语句
- 用于修改表中的现有记录
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
DELETE语句
- 用于删除表中的现有记录
DELETE FROM table_name WHERE condition;
LIMIT子句
- 用于指定要返回的记录数
SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;
- 如果想返回第4-6条记录,则需要使用OFFSET,表示返回3条记录,从第4条开始
SELECT * FROM Customers
LIMIT 3 OFFSET 3;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通