
(图片来源网络,侵删)
1、SELECT - 从数据库表中检索数据
SELECT column1, column2, ... FROM table_name;
如果你有一个名为students
的表,其中包含id
,name
, 和age
列,你可以使用以下查询来检索所有学生的姓名和年龄:
SELECT name, age FROM students;
2、WHERE - 用于过滤记录
SELECT column1, column2, ... FROM table_name WHERE condition;
要检索年龄大于20的学生:
SELECT name, age FROM students WHERE age > 20;
3、ORDER BY - 对结果集进行排序
SELECT column1, column2, ... FROM table_name ORDER BY column1, column2, ... ASC|DESC;
按年龄降序排列学生:
SELECT name, age FROM students ORDER BY age DESC;
4、INSERT INTO - 向表中插入新记录
INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...);
向students
表中插入一个新学生:
INSERT INTO students (name, age) VALUES ('John Doe', 22);
5、UPDATE - 更新表中的记录
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
将名为'John Doe'的学生的年龄更新为23:
UPDATE students SET age = 23 WHERE name = 'John Doe';
6、DELETE - 从表中删除记录
DELETE FROM table_name WHERE condition;
删除名为'John Doe'的学生:
DELETE FROM students WHERE name = 'John Doe';
7、JOIN - 用于结合两个或多个表的行,基于某些相关的列之间的关系
假设你有两个表:students
和courses
,它们通过一个关联表student_courses
相关联,你可以使用以下查询来检索每个学生和他们所选的课程:
SELECT students.name, courses.course_name FROM students JOIN student_courses ON students.id = student_courses.student_id JOIN courses ON courses.id = student_courses.course_id;
8、GROUP BY 和HAVING - 用于对结果集进行分组,并对分组应用条件
要检索每个年龄段的学生数量:
SELECT age, COUNT(*) as count FROM students GROUP BY age HAVING count > 1; -- 只显示学生数量大于1的年龄段
9、LIMIT 和OFFSET - 用于限制返回的记录数和跳过指定数量的记录
要检索前10名学生:
SELECT name, age FROM students LIMIT 10;
或者跳过前5名学生,然后检索接下来的10名学生:
SELECT name, age FROM students LIMIT 10 OFFSET 5;
这些只是MySQL查询的基础部分,MySQL提供了丰富的功能和语法来满足各种复杂的数据检索和操作需求。
文章版权声明:除非注明,否则均为论主机评测网原创文章,转载或复制请以超链接形式并注明出处。