数据库基础知识整理-基础概念

1. 数据库介绍

主键

  • 每个表都应该有一个主键,并且每个表只能有一个主键。
  • 主键列不能包含 NULL 值

什么是SQL

  • SQL,指结构化查询语言,全称是 Structured Query Language。
  • SQL 是用于访问和处理数据库的标准的计算机语言。
  • SQL 可以
    • 创建新的数据库、表、存储过程和视图。
    • 在数据库中插入、更新、删除记录。
    • 从数据库中检索数据等。

语法规则

  1. 可以多条查询,分号结尾。
  2. 不严格分区大小写。
  3. 在 SQL 中,会忽略空格和换行,但建议避免不必要的空格和空行。

2. SQL查询

常用查询

  • SHOW DATABASES; 查询所有数据库
  • use 数据库名; 使用某数据库
  • SHOW TABLES 查询所有表
  • SHOW COLUMNS FROM 表名 查询该表所有列
  • SELECT 列 FROM 表名 查询
  • SELECT 列1,列2... FROM 表名 多列查询
  • SELECT * FROM 表名 全部查询(查询所有列)

DISTINCT

  • DISTINCT 关键词用于返回唯一不同的值。
  • DISTINCT 关键字与 SELECT 结合使用,以去掉所有重复的记录,仅返回唯一的记录。
  • SELECT DISTINCT 列 FROM 表名;

例如查询表中客户所在城市,一般都会重复,用distinct可以返回不重复的城市列表

LIMIT

  • LIMIT 关键词用来检索记录的一个子集
  • SELECT 列 FROM 表 LIMIT 3; 返回前3条记录。
  • SELECT 列 FROM 表 LIMIT 2,4; (偏移量选择)从第2个位置开始选取4条记录。

注意: 偏移量选择的下标是从0开始的,上面的示例中从第二个位置开始,也就是从第 3 条数据开始。

完全限定名称

SELECT 列名 FROM 表名; -- 正常
SELECT 表名.列名 FROM 表名; -- 限定
  • 以上两条sql语句是完全等效的。
  • 当使用多个可能共享相同列名的表时,这种写法是特别有用的。

排序

  • SELECT 列名 FROM 表名 ORDER BY 列名; 根据列名排序。

    注意:ORDER BY 关键字默认按照升序 ASC 对记录进行排序。
    如果需要按照降序对记录进行排序,可以使用 DESC 关键字。

  • SELECT 列名 FROM 表名 ORDER BY 列名1,列名2..; 多列排序

    多列排序会首先根据条件1进行排序,当条件1重复时会根据条件2继续排序。
    例如姓名,年龄,身高等,重名时根据年龄对重名数据排序,年龄也一致时根据身高排序等
    不过话说因为有主键的存在,当这么复杂的情况出现时一般我觉得可能是要全查的…

更多推荐

数据库基础知识整理-基础概念