据说看过这篇文章的人月薪都10K?

数据库的语言:SQL语言(当前)

SQL的组成: DML:用来插入、修改和删除数据库的数据

       DDL:用来建立数据库、数据库对象和定义其列,大部分以CREATE开头命令

       DQL:用来对数据库中的数据进行查询

       DCL:用来控制数据库组件的存取许可、存取权限等

 

数据库中的运算符:+  -  *  /  %

数据库中的赋值运算符 :  =

数据库中的比较运算符: =  >  <  <>(不等于)   >=   <=  !=(不等于)

数据库中的逻辑运算符: AND  当且仅当两个布尔表达式为TRUE时,返回TRUE

            OR    当且仅当两个布尔表达式都为FALSE,返回FALSE

            NOT  对布尔表达式的值取反,优先级别最高

 

言归正传,使用SQL插入数据

语法:

1
INSERT  [INTO]  表名  [(列名列表)]  VALUES(值列表)

 

一次插入多行数据:

(1)通过INSERT SELECT语句向表中添加数据

(2)通过SELECT INTO语句将现有表中的数据添加到新表中

语法:

1
2
3
4
5
SELECT  IDENTITY(数据类型,表示种子,标识增长量)  AS  列明
 
INTO   列表
 
FROM  原始表

(3)通过UNIO关键字合并数据进行插入

 

使用SQL更新数据

语法:

1
UPDATE  表名  SET  列名  =  更新值  [WHERE  更新值]

使用SQL删除数据

 

1 语法:
2      delete   from   表名
3      where   行名
4 eg
5     delete   from   card
6     where   ID=‘0023-ABE’

 

 

 

使用SQL查看数据

1 语法:
2 select   *   from    表名
3 eg
4 select   *   from     student

 

SQL SERVER提供了一些内部函数,每个函数实现不同的功能,不同类别的函数都可以和SELECT、UPDATE、INSERT语句联合使用。

(1)字符串函数

函数名 描述 例子
CHARINDEX 用来寻找一个指定的字符串在另一个字符串中的起始位置

SELECT CHARINDEX('NAME','My name is Tom',1)

返回:4

LEN 返回传递给它的字符串长度

SELECT LEN('SQL SERVER 课程')

返回:12

UPPER 把传递给它的字符串转换为大写

SELECT UPPER('sql server 课程')

返回:SQL SERVER 课程

LTRIM 清楚字符左边的空格

SELECT LTRIM('    周志宇    ')

返回:周志宇    (后面空格保留)

RIRIM 清楚字符右边的空格

SELECT LTRIM('    周志宇    ')

返回:   周志宇(前面空格保留)

RIGHT 从字符串右边返回指定书目的字符

SELECT RIGHT(‘机房贷款’,2)

返回:贷款

REPLACE 替换一个字符串的字符

SELECT REPLACE(‘双方的奋斗',双,单)

返回:单方的奋斗

STUFF 在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串

SELECT STUFF('123我的456’,4,5,'他的')

返回:123他的456

(2)日期函数:

GETDATE 取得当前的系统日期

SELECT GETDATE()

返回:今天的日期

DATEADD 将制定的数值添加到指定的日期部分后的日期

SELECT DATEADD(mm,‘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/2000')

返回:15

注释:  

  

year yy,yyy
quarter qq,q
month mm,m
day dd,d
dayofyear dy,y
week wk,ww
weekday dw,w
hour hh
minute mi,m
second ss,s
millisecond ms

(3)数学函数:

RAND 返回从0到1之间的随机float数

SELECT RAND()

返回:0.79288062146374

ABS 取数值表达式的绝对值

SELECT ABS(-43)

返回:43

CELING 向上取整

SELECT CELING(43.5)

返回:44

FLOOR 想下去整

SELECT FLOOR(39.8)

返回:39

POWER 取数值表达式的幂值

SELECT POWER(5.2)

返回:25

ROUND 将数值表达式四舍五入

SELECCT ROUND(43.543,1)

返回:43.500

SIGN 对于正数返回+1,对于负数但会-1,对于0返回0

SELECT SIGN(-43)

返回:-1

SQRT 取浮点表达式的平方根

SELECT SQRT(9)

返回:3

(4)系统函数:

 

CONVERT 用来转变数据类型

SELECT CONBERT(VARCHAR(5),12345)

返回:字符串12345

 

模糊查询和聚合函数

(1)通配符:它是一类字符,它可以代替一个或多个真正的字符,查找信息时作为替代字符出现。

 

_ 一个字符
% 任意长度的字符串
[] 括号中所指定范围内的一个字符
[^] 不在括号中所指定范围内的任意一个字符

 

(2)使用LIKE进行模糊查询(自我总结:LIKE就是在一个字符串中去找有没有与条件相似的关键字,也就是说只要有我们要找的关键字在里面就行)

(3)使用BETWEEN在摸个范围进行查询(自我总计:BETWEEN的意思就是在---之间,顾名思义就是给定一个范围,在范围内查找)

(4)使用IN在例举值内进行查询:(自我总结:IN就是列举值必须与匹配的列具有相同的数据类型)

 

聚合函数SUM()函数   AVG()函数   MAX()函数和MIN()函数   COUNT()函数

SUM()函数:计算的是列的总和

AVG()函数:计算的是平均数

MAX()函数:计算的是最大值

MIN()函数:计算的是最小值

COUNT()函数:计算的是总和

 

分组查询:采用GROUP BY字句来实现。用于统计时经常使用分组查询!

 

sum()

 

count()

 

max() min()

 

avg()

一旦通过group by分组,那么我们只能获取组相关的信息,而不能获取组中成员的信息

在select只能跟聚合函数和group by后面的列,其他列不允许

where之后不能有聚合函数

 

帅的人都点赞了,你还在犹豫什么??!!!

   ⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄

 

posted @ 2015-11-04 20:28  向着10K踏步走  阅读(167)  评论(2编辑  收藏  举报