MySQL语句实例详解:25个应用案例解析(mysql语句案例)
MySQL是一个关系型数据库,被广泛应用于软件开发领域。本文将介绍MySQL语句实例,分析25个常见的应用案例,帮助读者更好地掌握MySQL语句。
1. 获取元数据:使用“SHOW METADATA”语句可以查询MySQL中的相关信息:
mysql> SHOW METADATA;
+——————+—–+—————+———————+
|METADATA |TYPE | DATABASE_NAME | TABLE_NAME |
+——————+—–+—————+———————+
|COLUMN_ATTRIBUTES |CHAR | my_db_name | my_table_name |
+——————+—–+—————+———————+
2. 创建表:使用“CREATE TABLE”语句可以创建表,示例代码如下:
CREATE TABLE my_table_name
(
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(30) NOT NULL,
age INT(11) NOT NULL,
PRIMARY KEY(id)
);
3. 添加数据:使用“INSERT INTO”语句可以添加数据,示例代码如下:
INSERT INTO my_table_name(name, age)
VALUES(‘Tom’, 22);
4. 更新数据:使用“UPDATE”语句可以更新表中的数据,示例代码如下:
UPDATE my_table_name SET name=’Alex’ WHERE age=22;
5. 删除数据:使用“DELETE”语句可以删除记录,示例代码如下:
DELETE FROM my_table_name WHERE name=’Tom’;
6. 获取数据:使用“SELECT”语句可以获取表中的数据,示例代码如下:
SELECT * FROM my_table_name WHERE age > 20;
7. 求和数据:使用“SUM()”函数可以求表中数据的和,示例代码如下:
SELECT SUM(age) FROM my_table_name;
8. 平均数据:使用“AVG()”函数可以求表中数据的平均值,示例代码如下:
SELECT AVG(age) FROM my_table_name;
9. 最大/小数据:使用“MAX()”和“MIN()”函数可以求表中数据的最大或最小值,示例代码如下:
SELECT MAX(age) FROM my_table_name;
SELECT MIN(age) FROM my_table_name;
10. 创建视图:使用“CREATE VIEW”语句可以创建视图,示例代码如下:
CREATE VIEW my_view AS
SELECT name, age FROM my_table_name;
11. 使用子查询:使用子查询可以查询多个表,示例代码如下:
SELECT name FROM my_table_name
WHERE age > (SELECT AVG(age) FROM my_table_name);
12. 创建触发器:使用“CREATE TRIGGER”语句可以创建触发器,示例代码如下:
CREATE TRIGGER my_trigger
AFTER INSERT ON my_table_name
FOR EACH ROW
BEGIN
INSERT INTO my_log_table(name, age, action)
VALUES(NEW.name, NEW.age, ‘INSERT’);
END;
13. 联结数据:使用“JOIN”语句可以连接多个表,示例代码如下:
SELECT * FROM my_table_name t1
JOIN my_other_table_name t2
ON t1.id=t2.id;
14. 分组数据:使用“GROUP BY”语句可以对表中的数据进行分组,示例代码如下:
SELECT age, COUNT(*) FROM my_table_name
GROUP BY age;
15. 使用CASE语句:使用“CASE”语句可以进行条件判断,示例代码如下:
SELECT name,
CASE WHEN age > 20 THEN ‘Adult’
ELSE ‘Child’ END as age_group
FROM my_table_name;
16. 重命名表:使用“RENAME TABLE”语句可以重命名表,示例代码如下:
RENAME TABLE my_table_name TO my_new_table_name;
17. 删除表:使用“DROP TABLE”语句可以删除表,示例代码如下:
DROP TABLE IF EXISTS my_table_name;
18. 创建索引:使用“CREATE INDEX”语句可以创建索引,示例代码如下:
CREATE INDEX my_index ON my_table_name (name);
19. 使用IN()操作符:使用“IN()”操作符可以在查询中使用多个变量,示例代码如下:
SELECT name FROM my_table_name
WHERE age IN(18, 19, 20);
20. 使用参数:使用“PREPARE”语句及其相关操作符可以使用参