SQL语句
1. 创建数据库
CTREATE DATABASE <name>;
2. 查看数据库
SHOW DATABASES ;
3. 删除数据库
DROP DATABASES <name>;
4. 使用数据库
USE <name>;
5. 创建表
这里给出MySQL常见数据类型的链接
CREATE TABLE table_name (column_name column_type);
MySQL
CREATE TABLE student(
student_id INT NOT NULL AUTO_INCREMENT,
student_name VARCHAR(20) NOT NULL,
student_score INT check(student_score>=0 and student_score<=100),
student_age INT check(student_age >=0),
PRIMARY KEY ( student_id )
);
6. 删除表
DROP TABLE <name>;
7. 插入数据
基础语法
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
实例
INSERT INTO student ( student_id , student_name,student_score,student_age )
VALUES
( 1, "李雷", 60, 19 );
插入多条数据
INSERT INTO table_name (field1, field2,...fieldN)
VALUES
(valueA1,valueA2,...valueAN),
(valueB1,valueB2,...valueBN),
(valueC1,valueC2,...valueCN);
插入数据也有其他两种语句
INSERT INTO student VALUES ( 1, "李雷", 60, 19 );
INSERT INTO student (student_id ,student_name) VALUES (1, "李雷");
8. 查询数据
SELECT student_id ,student_name
FROM student
[WHERE Clause]
[OFFSET M ][LIMIT N]
- 查询语句中你可以使用一个或者多个表,表之间使用逗号(,)分割,并使用WHERE语句来设定查询条件。
- SELECT命令可以读取一条或者多条记录。
- 你可以使用星号(*)来代替其他字段,SELECT语句会返回表的所有字段数据
- 你可以使用 WHERE语句来包含任何条件。
- 你可以通过OFFSET指定SELECT语句开始查询的数据偏移量。默认情况下偏移量为0。
- 你可以使用 LIMIT 属性来设定返回的记录数。
例如:
挑选前三个student_id>1的学生
SELECT *
FROM student
WHERE student_id >1
LIMIT 3;
8. where 子句
语句语法
WHERE <查询条件> {<判定运算1>,<判定运算2>,…}
1. <表达式1>{=|<|<=|>|>=|<=>|<>|!=}<表达式2>
其中: <> 为不等于,<=> 为严格比较两个NULL值是否相等
SELECT *
FROM student
WHERE student_id = 1;
2. <表达式1>[NOT]LIKE<表达式2>
LIKE 为模糊查询
常用符号:
- % 是 MySQL 中常用的一种通配符,在过滤条件中,百分号可以表示任何字符串,并且该字符串可以出现任意次
- _ 下划线通配符和百分号通配符的用途一样,下画线只匹配单个字符,而不是多个字符,也不是 0 个字符
例如:
挑选出名字中含雷的学生
SELECT *
FROM student
WHERE student_name = "%雷%";
3. <表达式1>[NOT][REGEXP|RLIKE]<表达式2>
REGEXP 为MySQL中的正则表达式
这里涉及正则表达式的内容,我这里给出一个正则表达式的链接
挑选不以A开头的学生
SELECT *
FROM student
WHERE student_name REGEXP "^[^a]";
4. <表达式1>[NOT]BETWEEN<表达式2>AND<表达式3>
BETWEEN 常用于查询在某一段日期直接或是在某一段区间
SELECT *
FROM student
WHERE student_age BETWEEN 16 AND 20;
5. <表达式1>IS[NOT]NULL
挑选年龄不为空的学生
SELECT *
FROM student
WHERE student_age IS NOT NULL;