【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语句提供了丰富的功能,用户可以根据需要检索特定列、应用条件筛选、排序、分组、聚合等,从而实现灵活的数据查询和分析操作。

相关推荐
在未来等你7 小时前
SQL进阶之旅 Day 21:临时表与内存表应用
sql·mysql·postgresql·database·temporary-table·memory-table·sql-optimization
zhuiQiuMX8 小时前
分享今天做的力扣SQL题
sql·算法·leetcode
weixin_307779138 小时前
Linux下GCC和C++实现统计Clickhouse数据仓库指定表中各字段的空值、空字符串或零值比例
linux·运维·c++·数据仓库·clickhouse
小Tomkk9 小时前
阿里云 RDS mysql 5.7 怎么 添加白名单 并链接数据库
数据库·mysql·阿里云
老纪的技术唠嗑局10 小时前
重剑无锋,大巧不工 —— OceanBase 中的 Nest Loop Join 使用技巧分享
数据库·sql
寒山李白11 小时前
MySQL复杂SQL(多表联查/子查询)详细讲解
sql·mysql·子查询·多表联查
冰橙子id11 小时前
centos7编译安装LNMP架构
mysql·nginx·架构·centos·php
玛奇玛丶11 小时前
面试官:千万级订单表新增字段怎么弄?
后端·mysql
nanzhuhe12 小时前
sql中group by使用场景
数据库·sql·数据挖掘
天天摸鱼的java工程师12 小时前
从被测试小姐姐追着怼到运维小哥点赞:我在项目管理系统的 MySQL 优化实战
java·后端·mysql