数据查询功能

单表查询

选择若干列

1. 指定列
SELECT 列名称 FROM 表名称
2. 全部列
SELECT * FROM 表名称
3. 经过计算的列
SELECT Sname, 2019-Sage FROM Student

经过计算的列、常量列显示结果都没有列名(显示为 '无列名'),可以通过其别名的方法改变查询结果显示的列名。

列名 | 表达式  [AS] 列别名
SELECT Sname 姓名, 2019-Sage 出生年份 FROM Student

选择若干元组

1. 消除取值相同的行

关键字:DISTINCT

SELECT DISTINCT 列名称 FROM 表名称
2. 满足条件的元组
SELECT 列名称 FROM 表名称 WHERE 列 运算符 值
查 询 条 件 运 算 符
比较 =,>,>=,<,<=,<>,!=
确定范围 BETWEEN…AND,NOT BETWEEN…AND
确定集合 IN,NOT IN
字符匹配 LIKE,NOT LIKE
空值 IS NULL,IS NOT NULL
多重条件 AND,OR

Sage BETWEEN 20 AND 30 相等于 Sage >= 20 AND Sage <= 23

对结果排序

ORDER BY <列名> [ASC|DESC]

默认是升序 ASC, 降序 DESC

使用聚合函数

表中元组总数: SELECT COUNT(*) FROM 表名
列均值: SELECT AVG(列名) FROM 表名
列个数: SELECT COUNT([DISTINCT] 列名) FROM 表名
最大值: SELECT MAX(列名) FROM 表名
最小值: SELECT MIN(列名) FROM 表名
列和值: SELECT SUM(列名) FROM 表名

分组统计

SELECT 分组依据列名, 聚合函数 FROM 表名 WHERE 列名 运算符 值
GROUP BY 列名
[ HAVING 聚合函数 运算符 值 ]

使用TOP限制结果

SQL Server 的语法:
SELECT TOP number [ percent ] [WITH TIES] 列名 FROM 表名
MySQL 语法
SELECT 列名 FROM 表名 LIMIT number
Oracle 语法
SELECT 列名 FROM 表名 WHERE ROWNUM <= number

多表链接

FROM table1 INNER|LEFT|RIGHT JOIN table2 ON <连接条件> INNER|LEFT|RIGHTJOIN table3 ON <连接条件> ...

数据更改功能

插入数据

单行插入

INSERT INTO 表名 VALUES (值1, 值2,....)

我们也可以指定所要插入数据的列:

INSERT INTO 表名 (列1, 列2,...) VALUES (值1, 值2,....)

多行插入

INSERT INTO 表名 [(列1, 列2,...)] SELECT语句

更新数据

UPDATE 表名 SET 列名 = 新值 WHERE 列名 = 某值

删除数据

DELETE FROM 表名 WHERE 列名 = 值

数据库SQL归纳(三)的更多相关文章

  1. 数据库SQL归纳(一)

    SQL功能分类 SQL 功能 动 词 数据定义 DDL CREATE.ALTER.DROP 数据查询 DQL SELECT 数据更改 DML INSERT.UPDATE.DELETE 数据控制 DCL ...

  2. 数据库 数据库SQL语句三

    转换函数 to_char()字符串转换日期函数 --查询大于某个日期的员工信息 select * from emp where hiredate>to_date('1980-02-12','yy ...

  3. 数据库SQL归纳(二)

    数据定义功能 对象 创建 修改 删除 架构 CREATE SCHEMA DROP SCHEMA 表 CREATE TABLE ALTER TABLE DROP TABLE 视图 CREATE VIEW ...

  4. Oracle数据库备份与恢复的三种方法

    转自blueskys567原文Oracle数据库备份与恢复的三种方法, 2006-10. 有删改 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份. 导出 ...

  5. 【SQL server初级】数据库性能优化三:程序操作优化

    数据库优化包含以下三部分,数据库自身的优化,数据库表优化,程序操作优化.此文为第三部分 数据库性能优化三:程序操作优化 概述:程序访问优化也可以认为是访问SQL语句的优化,一个好的SQL语句是可以减少 ...

  6. 数据库整理(三) SQL基础

    数据库整理(三) SQL基础 SQL语言的特点 集数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)功能于一体. 可以独立完成数据库生命周期中的全部活动: ​ ●定义和修改.删除关 ...

  7. 数据库SQL优化大总结之 百万级数据库优化方案(转载)

    网上关于SQL优化的教程很多,但是比较杂乱.近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充. 这篇文章我花费了大量的时间查找资料.修改.排版,希望大家阅读之后,感觉 ...

  8. 关于数据库SQL优化

    1.数据库访问优化   要正确的优化SQL,我们需要快速定位能性的瓶颈点,也就是说快速找到我们SQL主要的开销在哪里?而大多数情况性能最慢的设备会是瓶颈点,如下载时网络速度可能会是瓶颈点,本地复制文件 ...

  9. 数据库sql优化总结之5--数据库SQL优化大总结

    数据库SQL优化大总结 小编最近几天一直未出新技术点,是因为小编在忙着总结整理数据库的一些优化方案,特此奉上,优化总结较多,建议分段去消化,一口吃不成pang(胖)纸 一.百万级数据库优化方案 1.对 ...

随机推荐

  1. bzoj 1702: [Usaco2007 Mar]Gold Balanced Lineup 平衡的队列——map+hash+转换

    Description N(1<=N<=100000)头牛,一共K(1<=K<=30)种特色, 每头牛有多种特色,用二进制01表示它的特色ID.比如特色ID为13(1101), ...

  2. Js如何动态声明变量名

    做个笔记~ var a = 5; for (var i = 1; i <= a; i++) { eval("var a" + i + "=" + i); ...

  3. sqlserver 树形结构表查询 获取拼接结果

    树形表结构如下 IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[Test]') AND ty ...

  4. AndroidStudio获得发布版安全码SHA1

    耗了一下午才搞定 在cmd中: 1.打开keytool的目录:即JDK的安装目录 2.输入口令: (E:\tenyears\tenyears\app是keystore文件的目录)

  5. mysql之基本数据库操作(二)

    环境信息 数据库:mysql-5.7.20 操作系统:Ubuntu-16.04.3 mysql的启动.退出.重启 # 启动 $ sudo service mysqld start # 停止 $ sud ...

  6. 限制printk打印频率函数printk_ratelimit【转】

    转自:http://blog.csdn.net/lkkey80/article/details/45190095 版权声明:博文地址 http://blog.csdn.net/lkkey80?view ...

  7. mysql 数据库修改名字

    通过information_schema信息修改rename database的目的 mysql 没有rename database 命令,只能变相修改表到目标库里的表来实现: 拼接reanme ta ...

  8. C++ STL结构总结

    1. 什么是STL 它的全名是stand template library, 标准模板库,主要是将一些结构和算法写成模板,以便能够实现对任意类型的对象都可以操作,而不需要再一次去写一些算法及结构. 它 ...

  9. git清除用户名密码

    问题: remote: HTTP Basic: Access deniedfatal: Authentication failed for 'http://******** 解决方案: git con ...

  10. linux命令(50):top命令

    TOP是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中C ...