当前位置: 首页 > news >正文

SQL简介

SQL(Structured  Query Language)是一种用于管理和操作关系型数据库的标准语言。它最初由IBM在1970年代开发,并逐渐成为关系型数据库系统的标准。SQL允许用户进行以下操作:Structured:\ˈstrʌktʃəd\ 有结构的

  1. 数据查询:通过SELECT语句可以从数据库中检索数据。

  2. 数据插入:使用INSERT语句将新的数据添加到数据库中。

  3. 数据更新:使用UPDATE语句修改数据库中的现有数据。

  4. 数据删除:通过DELETE语句可以从数据库中移除数据。

  5. 数据定义:使用CREATE和ALTER语句可以定义或修改数据库结构,如表和索引。

  6. 数据访问控制:通过GRANT和REVOKE语句控制用户对数据库的访问权限。

SQL具有很强的灵活性和功能性,可以用于各种复杂的查询。在使用SQL时,可以采用不同的数据库管理系统(DBMS),如MySQL、PostgreSQL、Microsoft SQL Server、Oracle等,每种系统都有一些特定的扩展和功能,但基本的SQL语法在各系统之间是相对一致的。

SQL 基本概念

  1. 数据库:数据的集合,通常是表的集合。

  2. 表:数据库中的数据存储单元,由行和列组成。

  3. 列:表中的一个字段,每列代表数据的一种属性。

  4. 行:表中的一个数据记录,每行包含一组相关的数据。

SQL 基本操作

// 1.查询

SELECT column1, column2 FROM table_name;

// 2.向数据库表中插入新的数据行。

INSERT INTO table_name (column1, column2) VALUES (value1, value2)

// 3.用于修改现有数据。

UPDATE table_name SET column1 = value1 WHERE condition;

// 4.用于删除数据行。

DELETE FROM table_name WHERE condition;

// 5.用于创建一个新的数据库表

CREATE TABLE table_name (
    column1 datatype,
    column2 datatype
);
// 6.用于删除一个数据库表

DROP TABLE table_name;
// 7.用于修改表的结构,比如添加或删除列

ALTER TABLE table_name ADD column_name datatype;

SQL 条件查询

  • WHERE:用于指定条件。

    SELECT column1 FROM table_name WHERE condition;

  • AND/OR:用于组合多个条件。

  • SELECT column1 FROM table_name WHERE condition1 AND condition2; SELECT column1 FROM table_name WHERE condition1 OR condition2;

  • LIKE:用于模式匹配查询。

    SELECT column1 FROM table_name WHERE column2 LIKE 'pattern';

  • BETWEEN:用于选取范围内的数据。

    SELECT column1 FROM table_name WHERE column2 BETWEEN value1 AND value2;

  • IN:用于匹配一个集合中的值。

    SELECT column1 FROM table_name WHERE column2 IN (value1, value2, value3);

SQL 常用函数

  • COUNT: 计数。

    SELECT COUNT(column1) FROM table_name;

  • SUM: 求和。

    SELECT SUM(column1) FROM table_name;

  • AVG: 平均值。

    SELECT AVG(column1) FROM table_name;

  • MAX/MIN: 最大值/最小值。

    SELECT MAX(column1) FROM table_name; SELECT MIN(column1) FROM table_name;

相关文章:

  • 深度解析MySQL INSERT ... ON DUPLICATE KEY UPDATE语句
  • YOLOv8改进:ShapeIoU与InnerShapeIoU损失函数的理论与实践
  • 10_C++入门案例习题: 结构体案例
  • Java 中 == 和 equals() 的区别
  • C++ 的 输入输出流(I/O Streams)
  • RSGISLib:一款功能强大的GIS与RS数据处理Python工具包
  • 关于大数据的基础知识(三)——数据安全与合规
  • Python量化投资知识体系与学习路径
  • stat判断路径
  • 麒麟系统网络连接问题排查
  • 【Liunx】磁盘管理
  • day30 学习笔记
  • SpringBoot入门实战(第四篇:Redis集成配置)
  • 08前端项目----升序/降序
  • 资本怪兽贝莱德投资数据分析报告-独家
  • 基于OpenCV的骨骼手势识别分析系统
  • 仓颉造字,亦可造AI代理
  • `std::cout << xxx`
  • 虚幻基础:动画k帧
  • 抱佛脚之学SSM四
  • 五一节,和人民照相馆一起找回“拍照”的仪式感
  • “从山顶到海洋”科技成果科普巡展在重庆启动,免费开放
  • 旁白丨无罪后领到国家补偿,一位退休教师卸下了“包袱”
  • 王忠诚出任四川遂宁代市长,此前为成都市政府秘书长
  • 山西公布商标侵权典型案例:一工厂生产价值三百多万假“维达”纸被查
  • 中纪委驻中组部纪检监察组原组长李刚被捕