Mysql中的SQL语言基础2

129 阅读8分钟

Go开发工程师 下栽: www.sanzhishu.top/1104.html


插入数据

Mysql使用INSERT语句来插入数据。INSERT语句的一般格式如下:

INSERT INTO 表名 (列1, 列2, 列3, ...) VALUES (值1, 值2, 值3, ...);

其中,表名是要插入数据的表名;列1, 列2, 列3 是要插入数据的列名;值1, 值2, 值3是要插入的具体值。

下面以一个学生表student为例进行说明。

假设student表结构如下: 表名:student 列名:id (int, 主键) name (varchar(50)) age (int) gender (varchar(10))

插入一条数据的SQL语句为:

INSERT INTO student (id, name, age, gender) VALUES (1, 'John', 20, 'Male');

这条SQL语句向student表插入了一条学生数据,该学生的id为1,姓名为John,年龄为20,性别为Male。

解释该SQL语句的具体含义如下:

  1. INSERT INTO student:指定要插入数据的表为student。
  2. (id, name, age, gender):指定要插入数据的列为id, name, age, gender。
  3. VALUES (1, 'John', 20, 'Male'):指定要插入的具体值为1, 'John', 20, 'Male'。注意,值的顺序要与列的顺序对应。

该SQL语句执行后,student表中将插入一条新的学生数据,即id为1,姓名为John,年龄为20,性别为Male的数据。

查询数据

Mysql使用SELECT语句来查询数据。SELECT语句的一般格式如下:

SELECT1, 列2, 列3, ... FROM 表名 WHERE 条件;

其中,列1, 列2, 列3是要查询的列名;表名是要查询的表名;WHERE条件是可选的,用于筛选符合条件的数据。

以下以学生表student为例进行说明。

假设student表结构如下: 表名:student 列名:id (int, 主键) name (varchar(50)) age (int) gender (varchar(10))

查询所有学生的SQL语句为:

SELECT * FROM student;

这条SQL语句查询student表中的所有数据。

解释该SQL语句的含义如下:

  1. SELECT *:表示查询所有列的数据。可以替换为具体的列名,例如SELECT id, name, age, gender。
  2. FROM student:指定要查询数据的表为student。

该SQL语句执行后,将返回student表中所有学生的数据。

更新数据

Mysql使用UPDATE语句来更新数据。UPDATE语句的一般格式如下:

UPDATE 表名 SET 列1=值1, 列2=值2, 列3=值3, ... WHERE 条件;

其中,表名是要更新数据的表名;列1, 列2, 列3是要更新的列名;值1, 值2, 值3是要更新的具体值;WHERE条件是用于确定要更新的行。

以下以学生表student为例进行说明。

假设student表结构如下: 表名:student 列名:id (int, 主键) name (varchar(50)) age (int) gender (varchar(10))

更新学生年龄的SQL语句为:

UPDATE student SET age=22 WHERE id=1;

这条SQL语句将会更新id为1的学生的年龄为22。

解释该SQL语句的含义如下:

  1. UPDATE student:指定要更新数据的表为student。
  2. SET age=22:指定要更新的列为age,值为22。
  3. WHERE id=1:指定更新的条件为id等于1的行。

该SQL语句执行后,将会更新student表中id为1的学生的年龄为22。

需要注意的是,UPDATE语句可以同时更新多个列,只需要在SET后面使用逗号分隔。例如:

UPDATE student SET age=22, name='Tom' WHERE id=1;

这条SQL语句会将id为1的学生的年龄更新为22,姓名更新为Tom。

通过上述例子,你可以根据实际需求来更新不同的列和具体值。

删除数据

Mysql使用DELETE语句来删除数据。DELETE语句的一般格式如下:

DELETE FROM 表名 WHERE 条件;

其中,表名是要删除数据的表名;WHERE条件是用于确定要删除的行。

以下以学生表student为例进行说明。

假设student表结构如下: 表名:student 列名:id (int, 主键) name (varchar(50)) age (int) gender (varchar(10))

删除id为1的学生数据的SQL语句为:

DELETE FROM student WHERE id=1;

这条SQL语句将会删除student表中id为1的学生数据。

解释该SQL语句的含义如下:

  1. DELETE FROM student:指定要删除数据的表为student。
  2. WHERE id=1:指定删除的条件为id等于1的行。

该SQL语句执行后,将会删除student表中id为1的学生数据。

需要注意的是,DELETE语句可以根据不同的条件删除不同的数据。例如:

DELETE FROM student WHERE age > 20;

这条SQL语句会删除student表中年龄大于20的学生数据。

通过上述例子,你可以根据实际需求来使用不同的条件进行数据删除操作。

WHERE 子句

WHERE是MySQL中的查询条件,用于指定筛选条件,从表格中选择符合条件的记录。它通常用于SELECT、DELETE、UPDATE等语句中。

以下是一个基本的案例,假设有一个名为"employees"的表格,其中包含员工的信息(员工号、姓名、性别、年龄、职位等)。我们想要筛选出性别为男性且年龄大于30岁的员工信息。

SQL语句如下:

SELECT * FROM employees WHERE gender = '男' AND age > 30;

解释: 此SQL语句中的WHERE条件为"gender = '男' AND age > 30",它包含了两个筛选条件。第一个条件"gender = '男'"表示筛选出性别为男的员工,第二个条件"age > 30"表示筛选出年龄大于30岁的员工。通过AND运算符将两个条件连接在一起,保证了筛选结果符合两个条件的员工信息。最终结果包含了满足所有筛选条件的员工的所有信息。

需要注意的是,WHERE条件中的字段和条件之间需要进行正确的语法和逻辑运算符的组合,以便得到正确的结果。

LIKE语句

LIKE是MySQL中的模糊查询条件,用于指定模式匹配的筛选条件。它通常用于SELECT语句中,用于查询符合特定模式的记录。

以下是一个基本的案例,假设有一个名为"employees"的表格,其中包含员工的信息(员工号、姓名、性别、职位等)。我们想要筛选出所有姓氏以"王"开头的员工信息。

SQL语句如下:

SELECT * FROM employees WHERE name LIKE '王%';

解释: 此SQL语句中的WHERE条件为"name LIKE '王%'",其中使用了LIKE关键字和%通配符。关键字LIKE表示进行模糊匹配,然后通过%通配符指定匹配的模式。在本例中,%表示任意字符出现任意次数。所以"王%"表示匹配以"王"开头的任意字符。最终结果将包含以"王"开头的所有姓氏的员工信息。

需要注意的是,LIKE条件中的%通配符可以放在模式的任何位置,以实现不同的匹配需求。在使用LIKE时,还可以结合其他通配符(如_表示匹配单个字符)进行更灵活的模糊查询。

IN语句

IN是MySQL中的条件运算符,用于指定一个条件范围,如果字段的值在该范围内,则符合筛选条件。它通常用于SELECT、DELETE、UPDATE等语句中。

以下是一个基本的案例,假设有一个名为"employees"的表格,其中包含员工的信息(员工号、姓名、性别、年龄、职位等)。我们想要筛选出职位为经理或副经理的员工信息。

SQL语句如下:

SELECT * FROM employees
WHERE position IN ('经理', '副经理');

解释: 此SQL语句中的WHERE条件为"position IN ('经理', '副经理')",其中使用了IN关键字。IN关键字后面跟着一个括号,括号里用逗号分隔多个条件值。在本例中,我们指定了职位为经理或副经理的条件值。如果字段"position"的值在指定的条件值范围内,就会符合筛选条件。最终结果将包含职位为经理或副经理的员工信息。

需要注意的是,IN条件可以用来筛选出字段值在一个固定列表内的记录,提供了一种简洁的方式来进行多个值的筛选。对于更复杂的条件范围,也可以使用其他条件运算符(如BETWEEN、NOT IN等)来实现。

BETWEEN语句

BETWEEN是MySQL中的条件运算符,用于指定一个范围条件,如果字段的值在该范围内,则符合筛选条件。它通常用于SELECT、DELETE、UPDATE等语句中。

以下是一个基本的案例,假设有一个名为"employees"的表格,其中包含员工的信息(员工号、姓名、性别、年龄、职位等)。我们想要筛选出年龄在30岁到40岁之间的员工信息。

SQL语句如下:

SELECT * FROM employees
WHERE age BETWEEN 30 AND 40;

解释: 此SQL语句中的WHERE条件为"age BETWEEN 30 AND 40",其中使用了BETWEEN关键字。BETWEEN关键字后面跟着一个范围值,范围值由两个数值和关键字AND连接。在本例中,我们指定了年龄在30岁到40岁之间的范围条件。如果字段"age"的值在指定的范围内,就会符合筛选条件。最终结果将包含年龄在30岁到40岁之间的员工信息。

需要注意的是,BETWEEN条件是包含边界值的,即范围内的值都是符合条件的。如果想要排除边界值,可以使用其他条件运算符(如>,

关注夏壹分享发送:资源 获取深入讲解JVM虚拟机课程