SQL查询语句 SELECT * FROM
以下是一些常见的SQL查询语句范例:
查询 Student表中学生名为eric的
SELECT * FROM Student WHERE 学生名 = 'eric';
1. 查询所有数据:
SELECT * FROM table_name;
2. 查询特定列的数据:
SELECT column1, column2 FROM table_name;
3. 查询满足条件的数据:
SELECT * FROM table_name WHERE condition;
4. 查询并排序数据:
SELECT * FROM table_name ORDER BY column ASC/DESC;
5. 查询数据并限制结果数量:
SELECT * FROM table_name LIMIT number;
6. 查询数据并进行聚合计算:
SELECT column, COUNT(*) FROM table_name GROUP BY column;
7. 查询数据并进行连接操作:
SELECT column1, column2 FROM table1 JOIN table2 ON table1.column = table2.column;
8. 查询数据并使用条件进行模糊匹配:
SELECT * FROM table_name WHERE column LIKE 'pattern';
9. 查询数据并使用多个条件进行筛选:
SELECT * FROM table_name WHERE condition1 AND/OR condition2;
10. 查询数据并进行统计计算:
SELECT COUNT(*) FROM table_name;
SQL新增语句 INSERT INTO VALUES
以下是一些常见的SQL增加数据的语句范例:
插入一个学生名为 eric的,学号设置为101
INSERT INTO Student (学号, 学生名) VALUES (101, 'eric');
- 插入单行数据:
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
2. 插入多行数据:
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
3. 插入数据并选择性地指定列:
INSERT INTO table_name (column1, column2) VALUES (value1, value2) ON DUPLICATE KEY UPDATE column1 = value1;
4. 从另一个表中插入数据:
INSERT INTO table_name (column1, column2) SELECT column1, column2 FROM another_table WHERE condition;
5. 插入数据并返回自动生成的主键值:
INSERT INTO table_name (column1, column2) VALUES (value1, value2);
SELECT LAST_INSERT_ID();
SQL修改语句 UPDATE table_name SET column
- 更新单个字段的值:
例如我要修改Student表的 A列的学生名为 eric 的学号为100
UPDATE Student SET 学号 = 100 WHERE 学生名 = 'eric';
UPDATE table_name SET column = new_value WHERE condition;
2. 更新多个字段的值:
UPDATE table_name SET column1 = new_value1, column2 = new_value2 WHERE condition;
3. 根据另一个表的值更新数据:
UPDATE table_name1 SET column1 = table_name2.column2 FROM table_name2 WHERE table_name1.column3 = table_name2.column3;
4. 增加或减少字段的值:
UPDATE table_name SET column = column + value WHERE condition;
5. 使用CASE语句进行条件更新:
UPDATE table_name SET column = CASE WHEN condition1 THEN value1 WHEN condition2 THEN value2 ELSE value3 END WHERE condition;
SQL删除语句 DELETE FROM
删除student表学生名为 eric 学号为100的
DELETE FROM Student WHERE 学生名 = 'eric' AND 学号 = 100;
1. 删除符合条件的记录
DELETE FROM table_name WHERE condition
2. 删除整个表中的所有记录:
DELETE FROM table_name
3. 删除表中的部分记录,但保留表结构
TRUNCATE TABLE table_name
左连接和右连接
左连接(Left Join)和右连接(Right Join)是SQL中用于联接两个表的操作。
左连接(Left Join):左连接返回左表中的所有记录,以及与右表中匹配的记录。如果右表中没有匹配的记录,则返回NULL值。
右连接(Right Join):右连接返回右表中的所有记录,以及与左表中匹配的记录。如果左表中没有匹配的记录,则返回NULL值。
这两种连接操作的区别在于返回结果集中的记录来源。左连接以左表为基准,右连接以右表为基准。
以下是左连接和右连接的语法示例:
左连接:
SELECT * FROM 左表 LEFT JOIN 右表 ON 左表.列 = 右表.列;
右连接:
SELECT * FROM 左表 RIGHT JOIN 右表 ON 左表.列 = 右表.列;
请注意,"左表"和"右表"是要连接的实际表名,"列"是用于连接的列名。在实际使用时,请将其替换为您的表名和列名。
左连接和右连接是用于联接两个表的常见操作,可以根据具体的需求选择使用哪种连接方式。
假设有两个表:Student(学生表)和 StudentID(学号表),它们都包含一个名为"学生名"的列。
现在,我们将使用左连接和右连接来联接这两个表,以便比较它们之间的学生名。
左连接示例:
SELECT Student.学生名, StudentID.学生名
FROM Student
LEFT JOIN StudentID ON Student.学生名 = StudentID.学生名;
上述查询将返回Student表中的所有学生名,以及与之匹配的StudentID表中的学生名。如果在StudentID表中没有匹配的学生名,则返回NULL值。
右连接示例:
SELECT Student.学生名, StudentID.学生名
FROM Student
RIGHT JOIN StudentID ON Student.学生名 = StudentID.学生名;
上述查询将返回StudentID表中的所有学生名,以及与之匹配的Student表中的学生名。如果在Student表中没有匹配的学生名,则返回NULL值。
内连接Inner Join
是SQL中用于联接两个表的一种操作。内连接返回两个表中满足连接条件的记录。
内连接的语法如下:
SELECT 列1, 列2, ...
FROM 表1
INNER JOIN 表2 ON 表1.列 = 表2.列;
在上述语法中,"表1"和"表2"是要连接的实际表名,"列1, 列2, ..."是要选择的列名,"表1.列"和"表2.列"是用于连接的列名。
内连接的工作原理是,它会根据连接条件将两个表中的记录进行匹配。只有在两个表中都存在匹配的记录时,才会将这些记录返回为结果集。如果没有匹配的记录,则不会返回。
内连接可以根据连接条件将两个表中的相关数据进行关联,从而提供更丰富的查询结果。它是SQL中最常用的联接操作之一。
假设有两个表:Student(学生表)和 StudentID(学号表),它们都包含一个名为"学生名"的列。
现在,我们将使用内连接来联接这两个表,以便比较它们之间的学生名。
内连接示例:
SELECT Student.学生名, StudentID.学生名
FROM Student
INNER JOIN StudentID ON Student.学生名 = StudentID.学生名;
上述查询将返回在Student表和StudentID表中都存在的学生名。只有当两个表中的学生名匹配时,才会将这些记录返回为结果集。
1673

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



