sql数据库语句大全
的有关信息介绍如下:
SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准语言。以下是一些常用的SQL数据库语句及其简要说明:
一、数据库操作语句
连接数据库
- 语法:mysql[-h 服务器地址 -P 端口号] -u用户名 -p密码
- 示例:mysql -u账号 -p密码
创建数据库
- 语法:CREATE DATABASE [IF NOT EXISTS] 数据库名;
- 示例:CREATE DATABASE day035;
使用数据库
- 语法:USE 数据库名;
- 示例:USE day035;
删除数据库
- 语法:DROP DATABASE 数据库名;
- 示例:DROP DATABASE day035;(注意:此操作将永久删除数据库,需谨慎使用)
查询数据库
- 语法:SHOW DATABASES;
二、表操作语句
创建表
- 语法:
- 示例:
查询表
- 查询当前数据库所有表:SHOW TABLES;
- 查询表结构:DESC 表名;
- 查询建表语句:SHOW CREATE TABLE 表名;
修改表
- 添加字段:ALTER TABLE 表名 ADD 字段名 数据类型 (长度);
- 修改字段类型:ALTER TABLE 表名 MODIFY 字段名 新数据类型 (长度);
- 修改字段名和字段类型:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型 (长度);
- 删除字段:ALTER TABLE 表名 DROP COLUMN 字段名;
- 修改表名:RENAME TABLE 表名 TO 新表名;
删除表
- 语法:DROP TABLE 表名;
- 示例:DROP TABLE stu;
三、数据操作语句
插入数据
- 指定字段添加数据:INSERT INTO 表名 (字段名1, 字段名2) VALUES (值1, 值2);
- 全部字段添加数据:INSERT INTO 表名 VALUES (值1, 值2, ...);
更新数据
- 语法:UPDATE 表名 SET 字段名1 = 新值1, 字段名2 = 新值2 WHERE 条件;
删除数据
- 语法:DELETE FROM 表名 WHERE 条件;
数据查询
- 基本语法:SELECT 字段名1, 字段名2 FROM 表名 WHERE 条件;
- 条件查询:使用WHERE子句指定查询条件。
- 聚合函数:如AVG(), COUNT(), SUM(), MAX(), MIN()等,用于计算数据的统计信息。
- 分组过滤:使用GROUP BY子句对查询结果进行分组,并使用HAVING子句对分组结果进行过滤。
- 排序:使用ORDER BY子句对查询结果进行排序,可以按升序(ASC)或降序(DESC)排列数据。
- 分页:使用LIMIT子句限制查询结果返回的记录数量,常用于实现数据分页显示。
四、多表查询语句
笛卡尔积(交叉查询)
- 语法:SELECT * FROM 表1, 表2;
- 注意:笛卡尔积会返回两个表的所有组合,通常需要使用WHERE子句进行过滤。
内连接
- 隐式内连接:SELECT * FROM 表1, 表2 WHERE 表1.字段 = 表2.字段;
- 显示内连接:SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段 = 表2.字段;
外连接
- 左外连接:SELECT * FROM 表1 LEFT JOIN 表2 ON 表1.字段 = 表2.字段;
- 右外连接:SELECT * FROM 表1 RIGHT JOIN 表2 ON 表1.字段 = 表2.字段;
子查询
- 子查询是嵌套在其他SQL语句中的查询,可以用于SELECT, INSERT, UPDATE, DELETE等语句中。
五、其他常用语句
REPLACE INTO
- 用于插入新记录,如果记录已存在,则先删除原记录再插入新记录。基于唯一索引或主键来判断唯一性。
INSERT INTO ... ON DUPLICATE KEY UPDATE
- 用于插入新记录,如果记录已存在,则更新该记录。同样基于唯一索引或主键来判断唯一性。
INSERT IGNORE INTO
- 用于插入新记录,如果记录已存在,则忽略插入操作。基于唯一索引或主键来判断唯一性。
CASE WHEN ... THEN ... ELSE ... END
- 类似于if-else判断语句,可以在SQL查询中使用,以实现条件逻辑判断。
以上是一些常用的SQL数据库语句及其简要说明。在实际应用中,需要根据具体需求和数据库设计来选择合适的SQL语句。



