SQL基本语法和书写格式
插入
insert [into] 表名 [(列名列表)] values (值列表)
insert into 新表名 (列名列表) select 列名列表 from 表名
select 表名.列名 into 新表名 from 表名
insert 表名(列名列表) select 值列表1 union select 值列表2
修改
update 表名 set 列名 = 更新值 [where <更新条件>]
update 表名 set 列名1 = 更新值, 列名n = 更新值 [where <更新条件>]
删除
delete [from] 表名 [where <删除条件>]
truncate table 表名
查询
select 列名 from 表名 where <查询条件表达式>
order by <排序的列名> asc 或 desc
select * from 表名 //查询所有数据
select 列名列表 from 表名 where 查询条件 //查询部分行或列
select 列名 as 列别名 from 表名 where 查询条件 //使用列别名
select * from 表名 where 列名 is null //查询空值
select 列别名 = 列名, 默认信息 as 列名 from 表名 //使用常量
select top 显示的行数 列名 from 表名 where 查询条件 //限制显示行数
select top 数字 percent 列名 from 表名 where 查询条件 //按百分比提取
模糊查询
select * from 表名 where 列名 like '查询的值%'
select * from 表名 where 列名 between 初值 and 终值
select * from 表名 where 列名 in(值1, 值2)
分组查询
select 列名 from 表名 group by 列名
内连接
SELECT 表名1.列名, 表名2.列名 FROM 表名1, 表名2
WHERE 表名1.列名 = 表名2.列名
SELECT 表名1.列名, 表名2.列名 FROM 表名1
INNER JOIN 表名2 ON (表名1.列名 = 表名2.列名)
左外连接
SELECT 表名1.列名, 表名2.列名 FROM 表名1
LEFT OUTER JOIN 表名2 ON 表名1.列名 = 表名2.列名
右外连接
SELECT 表名1.列名, 表名2.列名 FROM 表名1
RIGHT OUTER JOIN 表名2 ON 表名1.列名 = 表名2.列名
通配符
-:一个字符
%:任意长度的字符串
[]:括号中所指定范围内的一个字符
[^]:不在括号中所指定范围内的任意一个字符
聚合函数
SUM() 总和
AVG() 平均值
MAX() 最大值
MIN() 最小值
COUNT() 计数
字符串函数
charindex 查找一个指定字符串在 select charindex('a','name')
另一个字符串中的起始位置 返回 2
len 字符串长度 select len('name') 返回 4
upper 转大写 select upper('name') 返回 NAME
ltrim 清除字符左边的空格 select upper(' name ')
返回 "name "
rtrim 清除字符右边的空格 select upper(' name ')
返回 " name"
right 从字符串右边返回指定数目的字符 select right('name',2) 返回 me
replace 替换一个字符串中的字符 select replace('name','a','b')
返回 nbme
stuff 在一个字符串中, select stuff('name',2,3,'bsp')
删除指定长度的字符, 返回 nbsp
并在该位置插入一个新的字符
日期函数
getdate 取得当前系统消息 select getdate() 返回当前的日期
dateadd 将指定的数值添加到指定的 select dateadd(mm,4,'01/01/2009')
日期部分后的日期 返回 05/01/2009
datediff 两个日期之间的间隔 select datediff
(mm,'01/01/2009','05/01/2009')
返回 4
datename 日期中指定日期部分的 select datename(dw,'01/01/2000')
字符串形式 返回 Saturday 或 星期六
datepart 日期中指定日期部分的整数形式 select datepart(day,'01/15/2009')
返回 15
日期部分参数及缩写
year yy,yyyy 年份
quarter qq,q 季节
month mm,m 月份
dayofyear dy,y 一年中的第几天
day dd,d 天数
week wk,ww 第几周
weekday dw,w 周几
hour hh,h 小时
minute mi,n 分
second ss,s 秒
minllisecond ms 毫秒
数学函数
rand 从0-1之间的随机float值 select rand() 返回 0.79854628433
abs 取数值表达式的绝对值 select abs(-43) 返回 43
ceiling 向上取整,取大于或等于 select ceiling(43.5) 返回 44
指定数值,表达式的最小整数
floor 向下取整,取小于或等于 select floor(43.5) 返回 43
指定表达式的最大整数
power 取数值表达式的幂值 select power(5,2) 返回 25
round 将数值表达式四舍五入为指定精度 select round(43.54,1) 返回 43.50
sign 正数返回+1,负数返回-1,0返回0 select round(-43) 返回 -1
sqrt 取浮点表达式的平方根 select sqrt(9) 返回 3
系统函数
convert 转换数据类型 select convert(varchar(5),12345)
返回 12345
current_user 返回当前用户的名字 select current_user()
返回 你登陆的用户名
datalenght 返回指定表达式的字节数 select datalenght('name') 返回 4
host_name 返回当前用户登录的计算机名字 select host_name()
system_user 返回当前所登录的用户名称 select system_user()
user_name 从给定的用户ID返回用户名 select user_name(1)
返回 从任意数据库中返回“dbo”
数据类型
二进制 非字符和文本 binary 固定长度
varbinary 可变长度
image 图片
字符 字母、符号、数字 char 固定长度非Unicode字符数据
varchar 可变长度非Unicode字符数据
nchar 固定长度Unicode字符数据
nvarchar 可变长度Unicode字符数据
text 长文本信息
ntext 可变长度长文本信息
日期和时间 日期、时间 datetime 1753-1-1到9999-12-31,准确度三百分之一秒或3.33毫秒
数字 正数、负数、分数 int 整数
smallint
tinyint
bigint
float 浮点数
real
货币 十进制货币值,精 money
确到小数点后4位
bit 表示 是/否 bit 布尔数据类型
SQL基本语法和书写格式的更多相关文章
- Sql常用语法以及名词解释
Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...
- SQL基础语法笔记教程整理
PS:本文适用SQL Server2008语法. 一.关系型数据库和SQL 实际上准确的讲,SQL是一门语言,而不是一个数据库. 什么是SQL呢?简而言之,SQL就是维护和使用关系型数据库中的的数据的 ...
- sql 常用语法汇总
Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...
- MySQL基本语法(一):和SQL Server语法的差异小归纳
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- MARK DOWN 书写格式说明
MarkdownPad2 书写格式说明: Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式,而MarkdownPad2是其中一种支持M ...
- SQL 基础语法笔记教程整理
最近从图书馆借了本介绍 SQL 的书,打算复习一下基本语法,记录一下笔记,整理一下思路,以备日后复习之用. PS:本文适用 SQL Server2008 语法. 首先,附一个发现的 MySQL 读书笔 ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- SQL DATEDIFF语法及时间函数 Sql 查询当天、本周、本月记录
SQL DATEDIFF语法及时间函数 Sql 查询当天.本周.本月记录 转:http://blog.csdn.net/Json1204/article/details/7863801?locatio ...
- SQL的语法
SQL的语法 SQL通用语法 SQL语句可以单行或多行书写,以分号(";")结尾. SQL语句可以使用空格或缩进增强可读性. MySQL数据库的SQL语句不区分大小写(建议关键字大 ...
随机推荐
- mepg
MPEG(Moving Picture Experts Group,动态图像专家组)
- Django【第26篇】:中介模型以及优化查询以及CBV模式
中介模型以及优化查询以及CBV模式 一.中介模型:多对多添加的时候用到中介模型 自己创建的第三张表就属于是中介模型 class Article(models.Model): ''' 文章表 ''' t ...
- mybatis多个参数时传参方式
第一种方案 DAO层的函数方法 Lecture getLecture(Integer id, Integer parentId); 对应的mapper.xml <select id=" ...
- jetSonNano darknet ubdefined reference to 'pow',undefined reference to 'sqrtf'....
我在用CMakelist编译工程时,遇到了这个一连串基础数学函数找不到的问题,如下图所示: 我当时在工程中明明引用了 #include "math.h"头函数,这是因为你的工程在预 ...
- postman-参数化
1.txt 1.如图第一行为变量名,下面行为对应的值 2.设置 Pre-request-Script 参数 data为文件名,username.password自定义参数名:在Tests最好加上断言 ...
- [luogu]P2680 运输计划[二分答案][树上差分]
[luogu]P2680 [NOIP2015]运输计划 题目背景 公元 2044 年,人类进入了宇宙纪元. 题目描述 L 国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之间,这 n ...
- 博弈论 x
——关于博弈论 四道例题带你走进博弈论~ (考虑必败态,必胜态) Ps:要理解这种思想,首先要明白什么叫必败态.说简单点,必败态就是“在对方使用最优策略时,无论做出什么决策都会导致失败的局面”.其他的 ...
- [BZOJ2225][SPOJ2371]LIS2 - Another Longest Increasing Subsequence Problem:CDQ分治+树状数组+DP
分析 这回试了一下三级标题,不知道效果怎么样? 回到正题,二维最长上升子序列......嗯,我会树套树. 考虑\(CDQ\)分治,算法流程: 先递归进入左子区间. 将左,右子区间按\(x\)排序. 归 ...
- HDU 6438 Buy and Resell
高卖低买,可以交易多次 维护一个优先队列,贪心 相当于每天卖出 用当前元素减优先队列最小得到收益 用0/卖出,1/买入标志是否真实进行了交易,记录次数 #include<bits/stdc++. ...
- 使用chooseImage上传图片,不压缩,使用原图
参考文章: https://help.aliyun.com/document_detail/92883.html