MySQL常见关键字函数

MySQL常见关键字函数

文章目录

    • 一、关键字
      • 1、SELECT:用于从数据库中选择数据。
      • 2、INSERT:用于向数据库中插入新数据。
      • 3、UPDATE:用于更新数据库中的数据。
      • 4、DELETE:用于从数据库中删除数据。
      • 5、CREATE:用于创建新的数据库表、视图、索引等。
      • 6、ALTER:用于修改数据库表结构。
      • 7、DROP:用于删除数据库表、视图、索引等。
      • 8、WHERE:用于过滤查询结果。
      • 9、FROM:用于指定查询的数据源。
      • 10、JOIN:用于将多个表连接在一起。
      • 11、ORDER BY:用于对查询结果进行排序。
      • 12、GROUP BY:用于对查询结果进行分组。
      • 13、HAVING:用于在GROUP BY之后过滤查询结果。
      • 14、DISTINCT:用于返回唯一的查询结果。
      • 15、UNION:用于将多个查询结果合并在一起。
      • 16、IN:用于指定一个值列表,过滤查询结果。
      • 17、NOT:用于否定查询条件。
      • 18、LIKE:用于模糊匹配查询条件。
      • 19、BETWEEN:用于指定范围查询条件。
      • 20、AS:用于为查询结果指定别名。
      • 21、AND:用于指定多个查询条件的逻辑与。
      • 22、OR:用于指定多个查询条件的逻辑或。
      • 23、NULL:用于指定空值。
      • 24、IS:用于判断查询结果是否为空。
      • 25、EXISTS:用于判断子查询是否返回结果。
      • 26、CASE:用于在查询中进行条件判断。
      • 27、WHEN:用于指定条件判断中的条件。
      • 28、THEN:用于指定条件判断中的结果。
      • 29、ELSE:用于指定条件判断中的默认结果。
      • 30、INNER JOIN:用于返回两个表中都有匹配的行。
      • 31、LEFT JOIN:用于返回左表中所有行,右表中有匹配的行。
      • 32、RIGHT JOIN:用于返回右表中所有行,左表中有匹配的行。
      • 33、FULL JOIN:用于返回左右表中所有行。
      • 34、ASC:用于指定升序排序。
      • 35、DESC:用于指定降序排序。
      • 36、LIMIT:用于限制查询结果的数量。
    • 二、函数
      • 1、COUNT:用于计算查询结果的行数。
      • 2、AVG:用于计算查询结果的平均值。
      • 3、SUM:用于计算查询结果的总和。
      • 4、MAX:用于找出查询结果的最大值。
      • 5、MIN:用于找出查询结果的最小值。
      • 6、CONCAT:用于将多个字符串连接在一起。
      • 7、SUBSTRING:用于截取字符串的一部分。
      • 8、UPPER:用于将字符串转换为大写。
      • 9、LOWER:用于将字符串转换为小写。
      • 10、TRIM:用于去除字符串两端的空格。
      • 11、LEFT:用于返回字符串的左边指定长度的部分。
      • 12、RIGHT:用于返回字符串的右边指定长度的部分。
      • 13、DATE:用于提取日期部分。
      • 14、TIME:用于提取时间部分。
      • 15、NOW:用于获取当前日期和时间。
      • 16、YEAR:用于提取年份部分。
      • 17、MONTH:用于提取月份部分。
      • 18、DAY:用于提取日期部分。
      • 19、HOUR:用于提取小时部分。
      • 20、MINUTE:用于提取分钟部分。
      • 21、SECOND:用于提取秒钟部分。
      • 22、ROUND:用于将数值四舍五入到指定的小数位数。
      • 23、ABS:用于返回数值的绝对值。
      • 24、RAND:用于生成随机数。
      • 25、INSTR:用于查找子字符串在字符串中第一次出现的位置。
      • 26、LENGTH:用于返回字符串的长度。

一、关键字

1、SELECT:用于从数据库中选择数据。

SELECT * FROM customers;

2、INSERT:用于向数据库中插入新数据。

INSERT INTO customers (name, email) VALUES ('John Doe', '[email protected]');

3、UPDATE:用于更新数据库中的数据。

UPDATE customers SET name = 'Jane Doe' WHERE id = 1;

4、DELETE:用于从数据库中删除数据。

DELETE FROM customers WHERE id = 1;

5、CREATE:用于创建新的数据库表、视图、索引等。

CREATE TABLE customers (id INT PRIMARY KEY, name VARCHAR(50), email VARCHAR(50));

6、ALTER:用于修改数据库表结构。

ALTER TABLE customers ADD phone VARCHAR(20);

7、DROP:用于删除数据库表、视图、索引等。

DROP TABLE customers;

8、WHERE:用于过滤查询结果。

SELECT * FROM customers WHERE name = 'John Doe';

9、FROM:用于指定查询的数据源。

SELECT * FROM customers;

10、JOIN:用于将多个表连接在一起。

SELECT * FROM customers INNER JOIN orders ON customers.id = orders.customer_id;

11、ORDER BY:用于对查询结果进行排序。

SELECT * FROM customers ORDER BY name ASC;

12、GROUP BY:用于对查询结果进行分组。

SELECT country, COUNT(*) FROM customers GROUP BY country;

13、HAVING:用于在GROUP BY之后过滤查询结果。

SELECT country, COUNT(*) FROM customers GROUP BY country HAVING COUNT(*) > 1;

14、DISTINCT:用于返回唯一的查询结果。

SELECT DISTINCT country FROM customers;

15、UNION:用于将多个查询结果合并在一起。

SELECT name FROM customers WHERE country = 'USA' UNION SELECT name FROM customers WHERE country = 'Canada';

16、IN:用于指定一个值列表,过滤查询结果。

SELECT * FROM customers WHERE country IN ('USA', 'Canada');

17、NOT:用于否定查询条件。

SELECT * FROM customers WHERE NOT country = 'USA';

18、LIKE:用于模糊匹配查询条件。

SELECT * FROM customers WHERE name LIKE '%Doe%';

19、BETWEEN:用于指定范围查询条件。

SELECT * FROM customers WHERE age BETWEEN 18 AND 30;

20、AS:用于为查询结果指定别名。

SELECT name AS full_name FROM customers;

21、AND:用于指定多个查询条件的逻辑与。

SELECT * FROM customers WHERE country = 'USA' AND age > 18;

22、OR:用于指定多个查询条件的逻辑或。

SELECT * FROM customers WHERE country = 'USA' OR age > 18;

23、NULL:用于指定空值。

SELECT * FROM customers WHERE phone IS NULL;

24、IS:用于判断查询结果是否为空。

SELECT * FROM customers WHERE phone IS NOT NULL;

25、EXISTS:用于判断子查询是否返回结果。

SELECT * FROM customers WHERE EXISTS (SELECT * FROM orders WHERE orders.customer_id = customers.id);

26、CASE:用于在查询中进行条件判断。

SELECT name, age, CASE WHEN age >= 18 THEN 'Adult' ELSE 'Child' END AS age_group FROM customers;

27、WHEN:用于指定条件判断中的条件。

SELECT name, age, CASE WHEN age >= 18 THEN 'Adult' WHEN age >= 13 THEN 'Teenager' ELSE 'Child' END AS age_group FROM customers;

28、THEN:用于指定条件判断中的结果。

SELECT name, age, CASE WHEN age >= 18 THEN 'Adult' ELSE 'Child' END AS age_group FROM customers;

29、ELSE:用于指定条件判断中的默认结果。

SELECT name, age, CASE WHEN age >= 18 THEN 'Adult' WHEN age >= 13 THEN 'Teenager' ELSE 'Child' END AS age_group FROM customers;

30、INNER JOIN:用于返回两个表中都有匹配的行。

SELECT * FROM customers INNER JOIN orders ON customers.id = orders.customer_id;

31、LEFT JOIN:用于返回左表中所有行,右表中有匹配的行。

SELECT * FROM customers LEFT JOIN orders ON customers.id = orders.customer_id;

32、RIGHT JOIN:用于返回右表中所有行,左表中有匹配的行。

SELECT * FROM customers RIGHT JOIN orders ON customers.id = orders.customer_id;

33、FULL JOIN:用于返回左右表中所有行。

SELECT * FROM customers FULL JOIN orders ON customers.id = orders.customer_id;

34、ASC:用于指定升序排序。

SELECT * FROM customers ORDER BY age ASC;

35、DESC:用于指定降序排序。

SELECT * FROM customers ORDER BY age DESC;

36、LIMIT:用于限制查询结果的数量。

SELECT * FROM customers LIMIT 10;

二、函数

1、COUNT:用于计算查询结果的行数。

SELECT COUNT(*) FROM customers;

2、AVG:用于计算查询结果的平均值。

SELECT AVG(age) FROM customers;

3、SUM:用于计算查询结果的总和。

SELECT SUM(amount) FROM orders;

4、MAX:用于找出查询结果的最大值。

SELECT MAX(age) FROM customers;

5、MIN:用于找出查询结果的最小值。

SELECT MIN(age) FROM customers;

6、CONCAT:用于将多个字符串连接在一起。

SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM customers;

7、SUBSTRING:用于截取字符串的一部分。

SELECT SUBSTRING(name, 1, 3) FROM customers;

8、UPPER:用于将字符串转换为大写。

SELECT UPPER(name) FROM customers;

9、LOWER:用于将字符串转换为小写。

SELECT LOWER(name) FROM customers;

10、TRIM:用于去除字符串两端的空格。

SELECT TRIM(name) FROM customers;

11、LEFT:用于返回字符串的左边指定长度的部分。

SELECT LEFT(name, 3) FROM customers;

12、RIGHT:用于返回字符串的右边指定长度的部分。

SELECT RIGHT(name, 3) FROM customers;

13、DATE:用于提取日期部分。

SELECT DATE(order_date) FROM orders;

14、TIME:用于提取时间部分。

SELECT TIME(order_date) FROM orders;

15、NOW:用于获取当前日期和时间。

SELECT NOW() FROM customers;

16、YEAR:用于提取年份部分。

SELECT YEAR(order_date) FROM orders;

17、MONTH:用于提取月份部分。

SELECT MONTH(order_date) FROM orders;

18、DAY:用于提取日期部分。

SELECT DAY(order_date) FROM orders;

19、HOUR:用于提取小时部分。

SELECT HOUR(order_time) FROM orders;

20、MINUTE:用于提取分钟部分。

SELECT MINUTE(order_time) FROM orders;

21、SECOND:用于提取秒钟部分。

SELECT SECOND(order_time) FROM orders;

22、ROUND:用于将数值四舍五入到指定的小数位数。

SELECT ROUND(price, 2) FROM products;

23、ABS:用于返回数值的绝对值。

SELECT ABS(quantity) FROM orders;

24、RAND:用于生成随机数。

SELECT RAND() FROM customers;

25、INSTR:用于查找子字符串在字符串中第一次出现的位置。

SELECT INSTR(name, 'Doe') FROM customers;

26、LENGTH:用于返回字符串的长度。

SELECT LENGTH(name) FROM customers;

你可能感兴趣的:(mysql,数据库)