刚刚进入sql学习的笔记

-----------类型转换函数-----------------

select 100+200              1100

select 100+'1000'           1100

select '1000'+100           1100

print '1000'+100            1100

--cast(表达式 as 数据类型)

--convert(数据类型 ,表达式)

select 100.0+cast ('1000' as int)

select 100.0+convert(int,'1000')

select '班级人数'+convert(char(1),1) 

select * from student order by convert (int,bid) desc

print convert (varchar(200),getdate(),120)

-----------联合结果集union(集合运算符)--------

--把多个结果集的行连接起来

select * from student

(列数必须相同,每列的数据类型也必须相同)

union all /union union和union all 的区别 union自动去除重复。

--大多数联合的时候不需要去除重复,同时哟啊白痴数据的顺序,所以一般建议用union all

select * from  teacher

--连接 把多个结果集的列连接起来

--从表中统计每种商品的销售价格,并且在底部做汇总

select

 商品名称,

 sum(商品数量*销售价格)as 销售总价,

 from myorders  

group by 商品名称  

union all  

select '总销售价格',

sum(销售价格*销售数量)

from Myorders  

order by 商品总价 asc

-----------------向表中插入多条记录--------------

--将student表备份到studentname1中

--studnetname1是执行语句后自动创建的表 表的结果和student一样 但是不含有约束 自动编号列存在

select * from student

select * into studentname1 from student

--值拷贝表结构 不拷贝数据

select  top 0 * into studentname1 from student

--使用insert into表

select ...from  表名 select * from studentname1

insert into studentname1

select  age,name,ID,sex,classID from student

-----常用的字符串函数-----

--1.len()

计算字符的个数

print len('Hi,最近好吗?')

--datalength()

返回所占用的字符节,这个不是字符串函数

print datalength('Hi,最近好吗?')

--13 print datalength(N'Hi,最近好吗?')

--16 2.print upper('Hello,How are you?')

--转换大写   print lower('Hello,How are you?')

--转换小写

3.ltrim rtrim 去除左右端空格

4.字符串截取函数

4.1 left()

--从左边截取五个字符  

print  left('中华人民共和国中央人民政府今天成立啦!',5) 

4.2 right() 

--从右边截取五个字符 

 print  right('中华人民共和国中央人民政府今天成立啦!',5)

4.3 substring ()

截取字符串  print  right('中华人民共和国中央人民政府今天成立啦!',3,3)--人民共

 ---------------日期和时间函数------------

print getdata()

print sysdatetime()--精确

 --dateadd()  增加时间

--datediff计算两个日期的差

select datediff(year,'1991-5-31'getdate())

select datediff(month,'1991-5-31'getdate())

select datediff(day,'1991-5-31'getdate())--天

select datediff(hour,'1991-5-31'getdate())--小时

select datediff(second,'1991-5-31'getdate())--秒

--datediff只是两者相减。

posted on 2017-08-02 17:26  王宏琳  阅读(117)  评论(0)    收藏  举报