http://www.w3cschool.cn/sql_having.html  w3c中有些SQL的讲解

1 order by 排序

SELECT Company, OrderNumber FROM Orders ORDER BY Company;

2 distinct 去重

SELECT DISTINCT Company FROM Orders ;

3 limit 控制选择的条数(MYSQL)

SELECT *FROM Persons LIMIT 5;

ORACLE

SELECT * FROM Persons WHERE ROWNUM <= 5;

4 通配符

SELECT * FROM Persons WHERE LastName LIKE 'C_r_er' -- _代表一个字符
SELECT * FROM Persons WHERE City LIKE '[ALN]%'; -- 以A或L或N 开头的 %代表一个或多个字符

SELECT * FROM Persons WHERE City LIKE '[!ALN]%' -- 不以A或L或N 开头的

5 between

SELECT * FROM Persons WHERE LastName NOT BETWEEN 'Adams' AND 'Carter';

6 union 和union all

Employees_China:

E_ID E_Name
01 Zhang, Hua
02 Wang, Wei
03 Carter, Thomas
04 Yang, Ming

Employees_USA:

E_ID E_Name
01 Adams, John
02 Bush, George
03 Carter, Thomas
04 Gates, Bill
SELECT E_Name FROM Employees_China

UNION

SELECT E_Name FROM Employees_USA;

结果

E_Name
Zhang, Hua
Wang, Wei
Carter, Thomas
Yang, Ming
Adams, John
Bush, George
Gates, Bill

两个表的叠加  union比union all 多了个排重操作

7 内连接 外连接

A表                B表
id name id name
1 a 1 b
2 b 3 c
4 c
内连接就是左表和右表相同的数据,查询结果只有相等的数据:
select * from A inner join B on A.id=B.id
select * from A,B where A.id=B.id
id      name            id      name 
1 a 1 b
外连接分为:左外连接、右外连接、全外连接
左外连接就是以左表为准,去匹配右表,左表有多少条数据,结果就是多少条数据
select * from A left join B on A.id=B.id
id name id name
1 a 1 b
2 b null null
4 c null null
右外连接就是与左外连接反之,以右表为准,去匹配左表,右表有多少条数据,结果就是多少条数据
select * from A right join B on A.id=B.id
id name id name
1 a 1 b
null null 3 c
全外连接数据条数不一定,相当与是左外连接 和右外连接 的综合
select * from A full join B on A.id=B.id
id name id name
1 a 1 b
2 b null null
null null 3 c
4 c null null 8 unique 唯一约束 约束还有 主键 外键 默认值 check(id>0等)不为空
CREATE TABLE Persons

(

Id_P int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255),

UNIQUE (Id_P)

) -- 建表时约束 MYSQL
CREATE TABLE Persons

(

Id_P int NOT NULL UNIQUE,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255)

) -- ORACLE

9 index 索引

CREATE INDEX PersonIndex ON Person (LastName DESC);

数据库索引的作用和优点缺点

10 alter 只能对表中整进行添加 修改 删除

ALTER TABLE Persons ADD Birthday date;
ALTER TABLE Persons ALTER COLUMN Birthday year;
ALTER TABLE Person DROP COLUMN Birthday;

11 MYSQL 自增 ORACLE 序列

CREATE TABLE Persons

(

P_Id int NOT NULL AUTO_INCREMENT,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255),

PRIMARY KEY (P_Id)

);
CREATE SEQUENCE seq_person

MINVALUE 1

START WITH 1

INCREMENT BY 1

CACHE 10;

12 视图 view 视图可以隐藏一些不想让用户看到的信息 以一种新的方式展示数据

create view v as select ename ||' ' ||deptno as data from emp;--创建视图
select * from v;

13 函数
SELECT Customer FROM Orders WHERE OrderPrice>(SELECT AVG(OrderPrice) FROM Orders);
SELECT COUNT(DISTINCT Customer) AS NumberOfCustomers FROM Orders;
SELECT FIRST(OrderPrice) AS FirstOrderPrice FROM Orders order by OrderPrice; -- 还有last
SELECT MAX(OrderPrice) AS LargestOrderPrice FROM Orders; -- min()
SELECT SUM(OrderPrice) AS OrderTotal FROM Orders;
SELECT MID(City,1,3) as SmallCity FROM Persons; -- 截取City前3个字符

14 group by 通常和sum() 合用 按group by 的字段分组 如果一个客户有两条记录 将两条记录的数值求和

SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer;
SELECT Customer,OrderDate,SUM(OrderPrice) FROM Orders GROUP BY Customer,OrderDate;

15 having 和where 唯一区别就是having子句中可以有函数

SELECT Customer,SUM(OrderPrice) FROM Orders GROUP BY Customer HAVING SUM(OrderPrice)<2000;
 

SQL 基本关键字 函数 关联 连接的更多相关文章

  1. SQL中字符串截取、连接、替换等函数的用法

    一.SQL中SUBSTRING函数的用法1.功能:返回字符.二进制.文本或图像表达式的一部分2.语法:SUBSTRING ( expression, start, length )3.QL 中的 su ...

  2. 四、oracle基本sql语句和函数详解

    一.oracle常用数据类型 一.  数据定义语言(ddl) 数据定义语言ddl(data definition language)用于改变数据库结构,包括创建.更改和删除数据库对象. 用于操纵表结构 ...

  3. Oracle数据库入门——sql语句和函数详解

    一.oracle常用数据类型 一.  数据定义语言(ddl) 数据定义语言ddl(data definition language)用于改变数据库结构,包括创建.更改和删除数据库对象. 用于操纵表结构 ...

  4. sql操作一般函数

    sql操作一般函数 函数一般语法:SELECT function(列) FROM 表 函数的基本类型是: Aggregate 合计函数:函数的操作面向一系列的值,并返回一个单一的值. Scalar 函 ...

  5. sql的关键字

    整理一下sql的关键字,一直都在用,只是很少去整理,所以今天简单整理一下,主要是整理CRUD的一些关键字. 写在前面:sql 不区分大小写 select 简单查询语句 select columnNam ...

  6. SQL Server 聚合函数算法优化技巧

    Sql server聚合函数在实际工作中应对各种需求使用的还是很广泛的,对于聚合函数的优化自然也就成为了一个重点,一个程序优化的好不好直接决定了这个程序的声明周期.Sql server聚合函数对一组值 ...

  7. SQL Server DAC——专用管理员连接

    今天打开数据库刚要连接时,看到“连接到服务器”窗口,突发的想到:要是SQL Server 不再响应正常的连接请求,又想使用数据库时,我们该怎么办?      其实我们还能通过“SQL Server D ...

  8. 数据库开发基础-SQl Server 聚合函数、数学函数、字符串函数、时间日期函数

    SQL 拥有很多可用于计数和计算的内建函数. 函数的语法 内建 SQL 函数的语法是: SELECT function(列) FROM 表 函数的类型 在 SQL 中,基本的函数类型和种类有若干种.函 ...

  9. SQL ServerOVER 子句,over开窗函数,SQL SERVER 开窗函数

    https://technet.microsoft.com/zh-cn/library/ms189461(v=sql.105).aspx http://www.cnblogs.com/85538649 ...

随机推荐

  1. Yii2系列教程二:MVC,Forms和Layouts

    上一篇文章我们简单地实现了Yii2框架安装和Hello World,而在这一篇文章当中,我们会带着好奇之心去探索一下在Yii2中的几个重要的元素组成:MVC,Forms和Layouts. 本文的目标是 ...

  2. Java源码阅读LinkedHashMap

    1类签名与注释 public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V> 哈 ...

  3. 【OpenStack项目管理-CPU/内存/存储/网络 配额管理】

    参考资料: OpenStack如何管理项目和用户:http://os.51cto.com/art/201312/422010.htm Nova.Cinder.Neutron资源配额设置:http:// ...

  4. 用Volley-nullpointerexception

    public Request(int method, String url, Response.ErrorListener listener) { mMethod = method; mUrl = u ...

  5. POJ 3071 Football 【概率DP】

    Football Football Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3734   Accepted: 1908 ...

  6. 经典SQL语句使用方法大全

    一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...

  7. SVN学习(一)——SVN 检出文件步骤、图标显示及含义

    May, I come... 1. 创建一个目录用来存放检出得到的文件,例如MyCRM 2. 直接进入目录MyCRM,点右键 3. 可以看到检出得到的文件 此时文件图标上没有任何标识.可能你会想到通过 ...

  8. asp.net web系统开发浏览器和前端工具

    1. Firefox浏览器+firebug插件 下载安装Firefox浏览器后,在菜单-附加组件-扩展中,搜索firebug,下载长得像甲虫一样的安装. 在web调试中,直接点击右上角的虫子,即可调出 ...

  9. webAPP开发的问题(总结)

    自Iphone和Android这两个牛逼的手机操作系统公布以来,在互联网界从此就多了一个新的名词-WebApp(意为基于WEB形式的应用程序.执行在高端的移动终端设备). 开发人员们都知道在高端智能手 ...

  10. unity Changing Game View background color

    Change the background color in the camera 参考:http://forum.unity3d.com/threads/changing-game-view-bac ...