学之,则难者亦易矣;
不学,则易者亦难矣 。
点个赞,别让我一个人看起来太过自恋。
-
查询数据库:
SHOW DATABASES; -
查询表:
SHOW TABLES; -
查询表字段:
SHOW COLUMNS FROM user; -
显示服务器状态:
SHOW STATUS; -
查询MySQL的版本:
SELECT VERSION(); -
使用DISTINCT去重:
SELECT DISTINCT gender, emp_no FROM employees; -
LIMIT和OFFSET进行分页:
SELECT * FROM employees LIMIT 5; SELECT * FROM employees LIMIT 5 OFFSET 5; -
ORDER BY排序:
SELECT * FROM employees ORDER BY gender DESC, last_name;注意:ORDER BY子句的位置应该在FROM子句之后,如果使用LIMIT,它必须在ORDER BY之后。
-
使用括号明确逻辑:
SELECT * FROM salaries WHERE (emp_no = 10005 OR emp_no = 10006) AND salary > 1000000; -
使用NOT关键字:
SELECT * FROM employees WHERE emp_no NOT IN (10005) ORDER BY emp_no; -
使用LIKE进行模糊查询:
SELECT * FROM employees WHERE first_name LIKE 'C%n'; -
正则表达式查询:
SELECT * FROM employees WHERE first_name REGEXP 'C'; -
字符串拼接和去空格:
SELECT CONCAT(RTRIM(first_name), '(', last_name, ')') FROM employees; -
操作时间的语句:
SELECT NOW() AS time; SELECT CURDATE(); SELECT CURTIME(); SELECT DATE('1986-01-01'); -
过滤日期范围:
SELECT * FROM test.employees WHERE DATE(hire_date) > '1986-01-01'; -
汇总数据:
SELECT AVG(salary) FROM salaries; -
NULL值处理:
SELECT COUNT(*) FROM table_name WHERE column_name IS NOT NULL; -
分组和聚合:
SELECT gender, COUNT(1) FROM employees GROUP BY gender WITH ROLLUP; SELECT gender, COUNT(1) FROM employees GROUP BY gender HAVING COUNT(1) > 3; -
UNION的用法:
SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price < 5 UNION SELECT vend_id, prod_id, prod_price FROM products WHERE vend_id IN (1001, 1002) ORDER BY vend_id, prod_price; -
创建备份表:
CREATE TABLE backup_table AS SELECT * FROM original_table; -
查看索引:
SHOW INDEX FROM your_table_name; -
添加索引:
ALTER TABLE user ADD INDEX idx_address_age (address, age); -
删除索引:
DROP INDEX index_name ON table_name;
存储过程和事务
MySQL还支持存储过程和事务的操作:
-
创建存储过程:
DELIMITER // CREATE PROCEDURE productpricing() BEGIN SELECT AVG(prod_price) AS price_average FROM products; END // DELIMITER ; -
执行存储过程:
CALL productpricing; -
删除存储过程:
DROP PROCEDURE productpricing; -
事务的使用:
START TRANSACTION; DELETE FROM table_name; SELECT * FROM table_name; ROLLBACK;
MySQL数据库的基础操作(续)
-
正则表达式匹配注意事项: MySQL中的正则表达式匹配在版本3.23.4后不区分大小写,但可以使用
BINARY关键字来区分大小写:SELECT * FROM employees WHERE first_name REGEXP BINARY 'C'; -
获取最后插入的ID:
SELECT LAST_INSERT_ID() AS last_inserted_id; -
查询创建的视图:
SHOW CREATE VIEW view_name; -
备份整张表:
CREATE TABLE backup_table AS SELECT * FROM original_table; -
MyISAM的文本匹配:
SELECT note_text, MATCH(note_text) AGAINST ('rabbit') AS rank FROM productnotes; -
查看MyISAM表的索引统计信息:
SHOW INDEX FROM table_name; -
事务的提交:
COMMIT;
索引相关操作
-
查看索引:
SHOW INDEX FROM your_table_name; -
添加索引:
ALTER TABLE user ADD INDEX idx_address_age (address, age); -
删除索引:
DROP INDEX index_name ON table_name;
📷:拍了一根草
这里有一些文章可能对你有www.yuque.com/liangliang-… 最后点赞关注,这个对我真的很重要
「白嫖也喜欢你」