要求:基本的语法要清楚。

sql server疑难点:

1、Partition by可以理解为 对多行数据分组后排序取每个产品的第一行数据

先处理内查询,由内向外处理,外层查询利用内层查询的结果嵌套查询不仅仅可以用于父查询select语句使用。还可以用于insert、update、delete语句或其他子查询中。

2、去重:去除地址重复的

语法:select * from 表名 where id in (select min(id) from 表名 group by Address)

举例:select * from [parse2] where id in (select min(id) from [parse2] group by Address);

3、删除某一列

语法:alter table table_name

4、求和:表中对两个字段进行求和,并对求和结果进行加减时

举例:若要计算出场地费(slf)和人工费(clf)的和,并进行相加:

1)若两个字段都为数值类型,则不需要类型转换,直接求和即可,方式如下:
语法:select sum(slf)+sum(clf) from 表名称 where 条件语句
2)若两个字段为字符型的,比如类型为varchar的话,则需要进行类型转换后,再进行计算,方法如下:
语法:select sum(cast(slf AS decimal(35, 0) )) + sum(cast(clf AS decimal(35,0) )) from 表名称 where clf!='' and slf!=''

5、修改某个字段的部分内容

语法:update  表名  set  字段=REPLACE (如果是不同的类型需要进行转换,  修改前的字段, 修改后的字段)

举例:update [pharse3] set width=REPLACE (cast(width as nvarchar(20)),'50米,'一百米')

6、更改字段的类型

语法:update 表名 set 字段=cast(字段  as nvarchar(20))

举例:update [dbo] set year=cast(year as nvarchar(20))

7、删除字段:直接删除date会出现约束错误,要删除约束

语法:

alter table 表名 drop constraint 表名下面的约束的很长的那个东西
go

alter table 表名 drop column 字段

举例:

alter table [pharse3] drop  constraint    DF__pharse3__date__4FA7B896
go

alter table [pharse3] drop column date

8、更改字段名字

语法:

exec  sp_rename  '[BB].[OldCol]','NewCol' -- 注意逗号后面,没有表名,没有点号,没有方括号,执行这句,才能得到你想要的结果“NewCol”,

exec  sp_rename  '[BB].[旧的字段名]',  '新的字段名' 
或者,另一条等价:

exec sp_rename  '[BB].[OldCol]',  [NewCol] -- 逗号后面,如果要用方括号,就不要同时再用引号 。

举例:
exec  sp_rename  '[Cdboare_coff].[Coefficient]',  [areacoef]
如果说master分支提示错误,则有可能更改master 分支,切换到对应的数据库名字下面

9、uinon 几张表,然后再保存

Select * into 总表 from a
Union all
Select * from b
Union All
Select * from c

10、except 两张表取差集,然后再保存

select *
into #temp
from (
select * from a
except
select * from b
) T --要取别名,不取别名则错误

11、格式转换,这个比较复杂

select 字段名  --上面和下面一致,用于显示列表字段内容
from 表一  a
LEFT JOIN 表二  b
on cast(a.字段名  as nvarchar(20)) = b.字段名  -- 转换类型,注意点就在这里
group by  字段名  -- 同上面一样的字段名,聚合函数不需要写(如avg(), )

12、来个简单的,直接添加字段列某个字符,如 ‘!’ 等

举例:select '!' + ReaId as re, huanxian  from  [CSpace]

备注:以上均是在工作过程中产生的疑惑,整理之。

参考资料:

sql将查询结果建立为新表 - CSDN博客

参数数据类型 sql_variant 对于 like 函数的参数 1 无效。 - CSDN博客

SqlServer获取当前日期 - Sir奔 - 博客园

SQL实现表名更改,列名更改,约束更改 - jes.shaw - 博客园

SQLSERVER,如何把一个表中某个字段的'NULL'值改为0?-CSDN论坛

sql server 操作(不定期更新)的更多相关文章

  1. sql server操作2:查询数据库语句大全【转】

    注:以下操作均建立在上篇文章sql Server操作1的数据基础之上 一.实验目的 熟悉SQL语句的基本使用方法,学习如何编写SQL语句来实现查询 二.实验内容和要求 使用SQL查询分析器查询数据,练 ...

  2. sql server 操作xml例子

    sql server 操作xml例子 /* sql xml 入门: --by jinjazz --http://blog.csdn.net/jinjazz 1.xml: 能认识元素.属性和值 2.xp ...

  3. 解读SQL Server 2014可更新列存储索引——存储机制

    概述 SQL Server 2014被号称是微软数据库的一个革命性版本,其性能的提升的幅度是有史以来之最. 可更新的列存储索引作为SQL Server 2014的一个关键功能之一,在提升数据库的查询性 ...

  4. SQL Server实时同步更新远程数据库遇到的问题

    工作中遇到这样的情况,需要在更新表TableA(位于服务器ServerA 172.16.8.100中的库DatabaseA)同时更新TableB(位于服务器ServerB 172.16.8.101中的 ...

  5. Sql Server 锁 排它锁 更新锁 共享锁

    引用别人的.有时间整体整理下. 引用地址:http://www.cnblogs.com/wenjl520/archive/2012/08/24/2654412.html 锁的概述 一. 为什么要引入锁 ...

  6. SQL Server 插入、更新和删除数据

    1.主要内容 ● 通过SSMS,插入.更新和删除表数据 ● 通过INSERT语句向表中插入数据 ● 通过UPDATE语句更新表内数据 ● 通过DELETE语句删除表内数据 ● 使用INSERT.UPD ...

  7. SQL Server 操作XML数据

    .xml.exist 输入为XQuery表达式,返回0,1或是Null.0表示不存在,1表示存在,Null表示输入为空 .xml.value 输入为XQuery表达式,返回一个SQL Server标量 ...

  8. sql server操作远程数据库

    --连接远程数据库 EXEC sp_addlinkedserver '服务器ip',N'SQL Server' --登录远程服务器 EXEC sp_addlinkedsrvlogin '服务器ip', ...

  9. sql server 如何跟更新拼接的数据(cast用法)

    我们在实际中会做如下图的连接 执行以后这个连接就会报错了,如下图所示   然后我们用cast将数字转换为字符串在连接,如下图所示     这次连接的结果就没问题了,如下图所示     最后如果两个数字 ...

随机推荐

  1. 基于MATLAB的手写公式识别(4)

    啊啊啊~ 目的 1.考虑图像预处理的合理性和结果.能达到什么样的结果,该结果是否满足我的需要,如果多余是否有删除的必要? 2.切割问题,他是怎样实现字符的切割的?字符之间识别的依据和划定该依据的标准是 ...

  2. 【译】Android NDK API 规范

    [译]Android NDK API 规范 译者按: 修改R代码遇到Lint tool的报错,搜到了这篇文档,aosp仓库地址:Android NDK API Guidelines. 975a589 ...

  3. hdu2435最大流最小割

    2435  There is a war 题意:       给你一个有向图,其中可以有一条边是无敌的,这条边可以是图中的边,也可以是自己任意加上去的图中没有的边,这条无敌的边不可以摧毁,让1和n无法 ...

  4. Linux中的shell和bash

    目录 shell shell script sh bash Dash tty .pty 和 pts 学安全的我们,经常会听到说获得某服务器的shell,就是指获得某个服务器的操作权限.我们学习linu ...

  5. HackingLab脚本关

    目录 1:key又又找不到了 2:快速口算 3:这个题目是空的 5:逗比验证码第一期 6:逗比验证码第二期 7:逗比的验证码第三期(SESSION) 8:微笑一下就能过关了 9:逗比的手机验证码 10 ...

  6. CTFHub-easy_search

    easy_search 玩了好些天,今天做道题找找状态,明天开始肝了 打开是一个登录框 用amdin/admin尝试了一下,提示登陆失败 这里肯定不会是暴力破解,我猜是sql注入,试了万能密码or 1 ...

  7. Mybatis-Plus03 代码自动生成器

    先看完Mybatis-Plus01和Mybatis-Plus02再看Mybatis-Plus03 AutoGenerator 是 MyBatis-Plus 的代码生成器,通过 AutoGenerato ...

  8. Windows bat批处理删除指定N天前的文件

    1:新建批处理文件:del_old_file.bat,更改系统时间为7天前,在c盘sql back 目录下新建测试文件,再将系统时间改为正确时间 2:编辑内容: rem 删除C:\sql back目录 ...

  9. Java_常用类API之一

    Math类 Math类中包含一些对数据进行数学运算的方法,而该类中的方法全都是静态的.像这样的类称之为工具类. 1 public static int abs(int a) 2 对一个数据求绝对值 3 ...

  10. DirectX渲染时Clear无效的原因(造成叠影)

    最近在开发D3D程序的过程中,发现一件很奇怪的事情,就是在Render的时候,纹理总是留有"残影"(即上次Render后的帧):如上图,是一副纹理绕中心点旋转的向日葵,但是可以看到 ...