MYSQL命令
一、连接数据库
- 连接数据库:
mysql -u (用户名) -p (密码) -h (主机ip地址) - 创建数据库:
CREATE DATABASE DATABASE_NAME(数据库名); - 查看数据库:
SHOW DATABASES; - 使用数据库:
USE DATABASE_NAME(数据库名); - 导入sql脚本:
source path/xx.sql(sql脚本文件的路径全名) - 查看表:
SHOW TABLES; - 查看表列(字段)设计:
SHOW COLUMNS FROM TABLE_NAME;=DESCRIBE TBALE_NAME; - SHOW命令语句:
HELP SHOW;
二、检索数据(SELECT)
2.1 DISTINCT (返回不同值(唯一值))
vend_id有14条数据,4个不重复值。用distinct返回唯一值。
SELECT DISTINCT vend_id FROM products;- 应用于所有列,若指定列不相同,所有行被检索出来。
2.2 LIMIT (限制结果)
- 检索前n行:
SELECT prod_name FROM products LIMIT n; - 检索从行5开始的5行:
SELECT prod_name FROM products LIMIT 5,5; - 行0:第一行是行0;LIMIT 1,1检索的是第二行。
2.3 排序(ORDER BY)
2.3.1 多列排序
SELECT prod_price, prod_name FROM products ORDER BY prod_price,prod_name- 排序按规定顺序进行。eg:先排price,再排name。
2.3.2 降序(DESC)
SELECT prod_price, prod_name FROM products ORDER BY prod_price DESC,prod_name DESC- DESC只应用到其前面的字段,多字段降序需每个字段后都跟DESC。
- 使用LIMIT+ORDER BY 选出最低/高的值。
2.4 过滤(WHERE)
| 操作符 | 说明 |
|---|---|
| = | |
| <> | 不等于 |
| != | |
| < | |
| <= | |
| > | |
| >= | |
| BETWEEN | 两值之间 |
- BETWEEN:
SELECT prod_price, prod_name FROM products WHERE prod_price BETWEEN 5 AND 10 ;[5,10]之间。 - IS NULL(空值检查):
SELECT cust_id FROM customers WHERE cust_email IS NULL;检查在customers表中cust_email = null 的列。
2.4.1 AND 和 OR
- AND 的计算次序高于OR,需要用圆括号明确分组。
SELECT prod_price, prod_name FROM products WHERE (vend_id = 1002 OR vend_id = 1003) AND prod_price >= 10
2.4.2 IN
- 与OR功能相同,比OR执行效率更快。
- 可以包含其他SELECT子句。
SELECT prod_price, prod_name FROM products WHERE vend_id IN (1002,1003)
2.4.3 NOT
- 支持IN 、BETWEEN 、EXISTS 取反。
SELECT prod_price, prod_name FROM products WHERE vend_id NOT IN (1002,1003);
2.4.4 LIKE
- (%)百分号通配符
- 匹配0个、1个、多个字符。
- 可放在任意位置。
- (_)下划线通配符
- 匹配1个字符。
SELECT prod_price, prod_name FROM products WHERE prod_name LIKE '_ ton%'- 效率低,不可滥用。
2.5 正则表达式匹配 REGEXP
- BINARY 区分大小写:
SELECT prod_price, prod_name FROM products WHERE prod_name REGEXP BINARY 'JetP' - 匹配特殊字符: \为前导。
- eg:
SELECT prod_price, prod_name FROM products WHERE prod_name REGEXP '\\([0-9] sticks?\\)' - 与LIKE的不同:LIKE匹配整个列,REGEXP匹配列值内。
- REGEXP 表达式语法:
2万+

被折叠的 条评论
为什么被折叠?



