关于sql:sql学习笔记

42次阅读

共计 3028 个字符,预计需要花费 8 分钟才能阅读完成。

根本语法

// 查问语句,select * from 表名称,示意选取所有列
SELECT 列名称 FROM 表名称

SELECT * from websites 

// 关键词 DISTINCT 用于返回惟一不同的值。SELECT DISTINCT 列名称 FROM 表名称

// 有条件的选取数据
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值

// AND 和 OR 运算符,能够在 where 子语句中把多个条件连接起来
SELECT * FROM Test WHERE cond1='A' AND cond2='B'
SELECT * FROM Test WHERE cond1='A' OR cond2='B'

// 依据指定的列对后果集进行排序,ORDER BY
SELECT Company, OrderNumber FROM Orders ORDER BY Company
SELECT Company, OrderNumber FROM Orders ORDER BY Company DESC // 降序
SELECT Company, OrderNumber FROM Orders ORDER BY Company ASC // 升序

// INSERT INTO,向表格中插入新的行
INSERT INTO 表名称 VALUES (值 1, 值 2,....)
INSERT INTO table_name (列 1, 列 2,...) VALUES (值 1, 值 2,....) // 指定插入数据的列

// UPDATE,批改表中的数据, 更新
UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值

// DELETE,删除表中的行
DELETE FROM 表名称 WHERE 列名称 = 值
DELETE * FROM table_name // 删除所有行

重要指令
SELECT – 从数据库中提取数据
UPDATE – 更新数据库中的数据
DELETE – 从数据库中删除数据
INSERT INTO – 向数据库中插入新数据
CREATE DATABASE – 创立新数据库
ALTER DATABASE – 批改数据库
CREATE TABLE – 创立新表
ALTER TABLE – 变更(扭转)数据库表
DROP TABLE – 删除表
CREATE INDEX – 创立索引(搜寻键)
DROP INDEX – 删除索引
WHERE 子句用于提取那些满足指定条件的记录。

高级语法

// TOP 子句,规定要返回的记录的数目,在 mysql 中应用 limit 子句
SELECT column_name(s) FROM table_name LIMIT number

// LIKE 操作符用于在 WHERE 子句中搜寻列中的指定模式。SELECT column_name(s) FROM table_name WHERE column_name LIKE pattern
SELECT * FROM Persons WHERE City LIKE 'N%' // "%" 可用于定义通配符(模式中短少的字母)。// SQL 通配符
% ----- 代替一个或多个字符
_ ----- 仅代替一个字符
[charlist] ----- 字符列中的任何繁多字符
[^charlist] ----- 不在字符列中的任何繁多字符

// IN,IN 操作符容许咱们在 WHERE 子句中规定多个值。SELECT column_name(s) FROM table_name WHERE column_name IN (value1,value2,...)

// BETWEEN,操作符 BETWEEN ... AND 会选取介于两个值之间的数据范畴。这些值能够是数值、文本或者日期。SELECT column_name(s) FROM table_name WHERE column_name BETWEEN value1 AND value2

// Alias,能够为列名称和表名称指定别名
SELECT column_name(s) FROM table_name AS alias_name // 表的 alias 用法
SELECT column_name AS alias_name FROM table_name // 给列定别名

// join,从多个表中获取数据
写法 1:SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons, Orders WHERE Persons.Id_P = Orders.Id_P
写法 2:SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo FROM Persons INNER JOIN Orders ON Persons.Id_P = Orders.Id_P ORDER BY Persons.LastName

函数

// AVG,AVG 函数返回数值列的平均值(null 不计入)。SELECT AVG(column_name) FROM table_name

// count,COUNT() 函数返回匹配指定条件的行数(null 不计入)。SELECT COUNT(column_name) FROM table_name

// FIRST()函数,FIRST() 函数返回指定的字段中第一个记录的值。SELECT FIRST(column_name) FROM table_name

// LAST() 函数,LAST() 函数返回指定的字段中最初一个记录的值。SELECT LAST(column_name) FROM table_name

// MAX() 函数,MAX 函数返回一列中的最大值。NULL 值不包含在计算中。SELECT MAX(column_name) FROM table_name

// MIN() 函数,MIN 函数返回一列中的最小值。NULL 值不包含在计算中。SELECT MIN(column_name) FROM table_name

// SUM() 函数,SUM 函数返回数值列的总数(总额)。SELECT SUM(column_name) FROM table_name

// GROUP BY,共计函数 (比方 SUM) 经常须要增加 GROUP BY 语句。GROUP BY 语句用于联合共计函数,依据一个或多个列对后果集进行分组。SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name

// HAVING 子句,在 SQL 中减少 HAVING 子句起因是,WHERE 关键字无奈与共计函数一起应用。SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value

// LEN 函数,LEN 函数返回文本字段中值的长度。SELECT LEN(column_name) FROM table_name

SQL 简介

what

结构化查询语言
让您能够拜访和解决数据库,包含数据插入、查问、更新和删除

服务器 RDBMS
RDBMS 指关系型数据库管理系统,全称 Relational Database Management System。
RDBMS 是 SQL 的根底,同样也是所有古代数据库系统的根底,比方 MS SQL Server、IBM DB2、Oracle、MySQL 以及 Microsoft Access。
RDBMS 中的数据存储在被称为表的数据库对象中。
表是相干的数据项的汇合,它由列和行组成。

正文完
 0