Sql复制Union及字符串日期函数

本文介绍了SQL中的`UNION`操作,用于合并两个集合,要求集合列数相同且数据类型匹配。同时讨论了复制表的不同方法,包括复制数据和仅复制框架。此外,还详细讲解了字符串函数,如长度计算、大小写转换和空格处理,以及日期函数,如时间加减计算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Union

.英译:联盟,联合
联合结果集,集合运算符

select '最高成绩' as 内容,max(tsenglish) as 分数from tblscore
union
select '最低成绩',min(tsenglish) from tblscore
union
select '平均成绩' avg(tsenglish) from tblscore

结果如图:
这里写图片描述
常见应用:底部汇总
得出横着的表.集合运算符是对两个集合操纵的,两个集合必须具有相同的列数.列具有相同的数据类型(至少能强转或者隐式转换).最终输出的集合的列名由第一个集合的列名来确定
**总结:要联合的结果集必须有相同的列数.每个结果集的列必须类型相同,并且默认会去除重复
请注意如果不合并重复行,那么使用Union all**

复制

第一种

select * into new_table_name from table_name

将会自动创建新表.将表中数据和框架一起复制,但是不会复制约束

第二种

select * into new_table_name from table_name where 1<>1

只复制框架.不复制数据.每次复制都判断1<>1,效率较低,不推荐使用

第三种

select top 0 * into new_table_name from table_name

复制框架不复制数据.效率高.

第四种

insert into new_table_name select * from table_name

直接往已存在的表内复制所有数据.前提是表已经建立好.并且数据类型相同

字符串函数

**len(column_name)**

字符串的长度

select len('挖掘机技术哪里强')
**dateLength(column_name)**

查询字节个数.如果列格式为n.空格算两个字符.如果不带,则算1个

**Lower()**

转小写

**Upper()**

转大写

**LTrim()**

左去空格

**Rtrim**

右去空格

**Rtrim(Ltrim(''))**

去除两边全部空格

日期函数

select dateadd(year,5,getdate()) 

5年之后的当前时间

select dateadd(month,5,getdate())

5个月之后的时间

select dateadd(day,5,getdate())

5天之后的时间

select dateadd(hour,5,getdate())

5小时之后的时间

select dateadd(second,5,getdate())

5秒之后的时间
数字可以变成负数达到减 的目的

select dateDiff(year,'2010',getdate())

求差.求岁数用的较多

select datePart(year,getdate())

获取当前年份.datepart获取日期的某个部分

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值