【SQL】数据操作语言(DML):学习插入、更新和删除数据

数据查询语言(DQL)用于从数据库中检索数据,主要通过SELECT语句来实现。SELECT语句允许用户指定要检索的数据列、表以及任何筛选条件。以下是对DQL的详细介绍以及多个示例:

SELECT语句基础结构:

sql

SELECT column1, column2, ... FROM table_name WHERE condition;

  • column1, column2, ...:要检索的列名,可以是一个或多个列。
  • table_name:要从中检索数据的表名。
  • condition:可选项,用于指定检索数据的筛选条件。

示例:

  1. 检索所有列的数据

    sql
    SELECT * FROM employees;

  2. 检索特定列的数据

    sql
    SELECT name, department FROM employees;

  3. 使用WHERE子句进行条件筛选

    sql
    SELECT * FROM employees WHERE department = 'IT' AND salary > 50000;

  4. 对检索结果进行排序

    sql
    SELECT name, salary FROM employees ORDER BY salary DESC;

  5. 对检索结果进行分组

    sql
    SELECT department, AVG(salary) AS avg_salary FROM employees GROUP BY department;

  6. 使用聚合函数计算统计值

    sql
    SELECT COUNT(*) AS total_employees FROM employees;

  7. 使用JOIN进行多表连接

    sql
    SELECT e.name, d.department_name FROM employees e INNER JOIN departments d ON e.department_id = d.id;

  8. 使用子查询

    sql
    SELECT name, department FROM employees WHERE department IN (SELECT department_name FROM departments WHERE location = 'New York');

  9. 使用LIMIT限制结果集大小

    sql
    SELECT * FROM employees LIMIT 10;

  10. 使用DISTINCT消除重复行

    sql
    SELECT DISTINCT department FROM employees;

总之,DQL语言通过SELECT语句提供了丰富的功能,用户可以根据需要检索特定列、应用条件筛选、排序、分组、聚合等,从而实现灵活的数据查询和分析操作。

相关推荐
这个DBA有点耶16 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵19 小时前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
SamDeepThinking1 天前
一条UPDATE语句在MySQL 8.0中到底加了几把锁?
后端·mysql·程序员
NE_STOP3 天前
Vibe Coding -- Claude Code 的核心配置与常用命令
程序人生
李白客3 天前
KES新版MySQL兼容能力再升级意味着什么?
mysql·国产数据库
ClouGence3 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
Jim6005 天前
【吃透 MySQL InnoDB连载】第 1 章・解密线上数据库高频故障
mysql
GreatSQL5 天前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
zzzzzz3106 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql