`

SQL Server的使用笔记

 
阅读更多

SQL Server的使用笔记

一、比较复杂的update语句:update .. from 

update T_BuyMaterialReceiveStoreDetail

set QCID = a.QCID,

QCQty = isnull(a.QCQty,a.Qty),

QCPricePercent = isnull(a.QCPricePercent,1),

QCFailedQty = isnull(a.QCFailedQty,0),

QCWasteQty = isnull(a.QCWasteQty,0),

QCShortQty = isnull(a.QCShortQty,0),

QCPercent = isnull(a.QCPercent,1),

Note = a.Note,

DeterMineResult=a.DeterMineResult

from (select * from T_Temp_BuyMaterialReceiveStoreDetail

where OperateID = @OperateID

and OperateTime = @OperateTime

and QCID = QCID) a

where T_BuyMaterialReceiveStoreDetail.BuyID = a.BuyID

and T_BuyMaterialReceiveStoreDetail.MaterialItemID = a.MaterialItemID

and T_BuyMaterialReceiveStoreDetail.ReceiveID = a.ReceiveID

and T_BuyMaterialReceiveStoreDetail.StoreID = a.StoreID

and T_BuyMaterialReceiveStoreDetail.MaterialColorID = a.MaterialColorID

and T_BuyMaterialReceiveStoreDetail.MaterialSizeID = a.MaterialSizeID

and T_BuyMaterialReceiveStoreDetail.SaleID = a.SaleID

and T_BuyMaterialReceiveStoreDetail.StyleID = a.StyleID

 

二、判断varchar型的数据是否空

len(Note)= 0 

 

三、将数据库的表的表结构的ntext类型的字段改为nvarchar(max)

select 'alter table ' +  c.name+' alter column '+a.name+' nvarchar(max)' 

from sys.columns a

left join sys.types b on a.system_type_id = b.system_type_id and b.name='ntext'

left join sys.objects c on a.object_id = c.object_id and c.Type='U'

where b.name='ntext' and c.Type='U'

四、巧妙的将返回的所有行的记录以一行字符串的形式输出

 

DECLARE @STR VARCHAR(8000)

SELECT @STR = ISNULL(@STR,'')+salecode+char(13) FROM t_sale 

SELECT @STR 

五、处理bit的类型的数据不能max
max(cast(a.State as int))
六、对调数据库中的两行记录的某个字段的值
update T_ReportConfig
set Array = case
when ReportConfigID = 17 then (select Array from T_ReportConfig where  ReportConfigID=18)
else (select Array from T_ReportConfig where  ReportConfigID=17)
end
where ReportConfigID in (17,18)

个人解释:sql编译时,先计算了()中的值,所以巧妙的达到了交互两个值

七、delete exists
delete from A 
where exists(select * 
from B a
where A.Column = a.Column)
八、OBJECT_ID (Transact-SQL)
Returns the database object identification number of a schema-scoped object. 对象标识号
语法:
OBJECT_ID ( '[ database_name . [ schema_name ] . | schema_name . ] 
  object_name' [ ,'object_type' ] )
例子:
select count(1) from syscolumns where [id]=object_id('T_Operator') and [name]='OperatorID'
九、数据库中对象是否存在
1.表中的列
select count(1) from syscolumns where [id]=object_id('T_Operator') and [name]='OperatorID'
2.表
select count(*) from sysobjects 
where id = object_id(N'[T_Operator]') and OBJECTPROPERTY(id, N'IsUserTable') = 1
十、SqlServer字符串前加N
加上 N 代表存入数据库时以 Unicode 格式存储。
N'string' 表示string是个Unicode字符串

Unicode 字符串的格式与普通字符串相似,但它前面有一个 N 标识符(N 代表 SQL-92 标准中的国际语言 (National Language))。
Unicode 常量确实有排序规则,主要用于控制比较和区分大小写
十一、OBJECTPROPERTY
Returns information about objects in the current database

 

分享到:
评论

相关推荐

    sql server 2008笔记

    - 使用SQL Server Management Studio中的性能监视器,关注`Logical disk AVG disk read/write queue length`,理想值应在硬盘数量的2倍以内。 - 当遇到读取问题时,可以采取消除碎片、调整索引、优化SQL命令、增加...

    SQL Server精华 (CHM)_sqlserver_SQLServer笔记_

    《SQL Server精华 (CHM)_sqlserver_SQLServer笔记_》是一部综合性的SQL Server学习资源,旨在帮助用户深入理解和掌握Microsoft SQL Server数据库管理系统的核心概念、功能和最佳实践。这部笔记涵盖了一系列关键知识...

    sqlserver优化笔记

    ### SQL Server 优化知识点 #### 一、SQL性能优化技巧 **1.1 查询的模糊匹配** - **问题描述**:使用 `LIKE '%parm1%'` 的查询方式会导致索引失效,降低查询效率。 - **解决方案**: - **前端改进**:改变用户...

    SQL server2005笔记

    SQLserver 数据库学习笔记 欢迎大家下载学习,共同进步啊

    SQLServer2005数据库学习笔记

    笔记是本人学习SQLServer一段时间后重新整理出来的,适合有一些入门基础的人学习。 ├─01 安装及使用 │ SQLServer2005安装及使用.txt │ ├─02 常用函数 │ function.sql │ ├─03 建表、建库 │ create.sql ...

    sql server语法笔记整理

    本笔记主要针对SQL Server的语法进行整理,旨在帮助初学者快速掌握基础概念和常用操作。 一、SQL简介 SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。在SQL Server中,你可以创建、更新、...

    SQLserver2008学习笔记

    SQL server 2008

    sqlserver数据库操作笔记

    - **配置工具:** 使用“SQL Server Configuration Manager”,位于控制面板->管理工具下。 - **服务启动:** 在“SQL Server 2005服务”中启动服务,如果更改了配置需要重启服务。 - **网络协议:** 在“SQL Server...

    SQL SERVER学习笔记

    根据提供的文件内容,我们可以整理出一系列关于SQL Server的基础知识点,主要涵盖了数据库的创建与删除、表的创建与修改、数据的插入与更新、以及查询语句等关键操作。下面将详细解析这些知识点。 ### 1. 数据库的...

    SQL Server 学习笔记

    在本文中,我们将深入探讨SQL Server的学习笔记,涵盖其体系结构、数据库类型特点、OLTP与OLAP的区别,以及一些关键的管理工具。 首先,让我们了解Microsoft SQL Server 2008系统的体系结构。这个系统由四个主要...

    sqlserver个人学习笔记

    ### SQLServer个人学习笔记知识点概览 #### 一、日期格式转换:`SELECT REPLACE(CONVERT(CHAR(8),GETDATE(),120),'-','')` - **知识点**:使用`CONVERT`函数将当前系统时间`GETDATE()`转换为指定格式的字符串,并...

    sql server数据库笔记.zip

    SQL Server是一款由微软公司开发的关系型数据库管理系统,广泛应用于企业级数据存储和管理。这份"sql server数据库笔记.zip...通过深入学习这些笔记,你可以更好地掌握SQL Server的使用,提升数据库管理和开发能力。

    java+SSH+oracle+sqlserver学习笔记

    【Java SSH Oracle SQLServer 学习笔记】 Java是一种广泛使用的面向对象的编程语言,它以其跨平台、开源和丰富的库而闻名。SSH是三个开源框架的缩写,分别是Spring、Struts和Hibernate,它们在Java Web开发中起着至...

    SQL_Server学习笔记

    这部分介绍了如何使用Java程序通过JDBC-ODBC桥连接方式操作SQLServer数据库。内容包括配置数据源、加载驱动、建立连接以及使用Statement或PreparedStatement执行CRUD操作(即创建、读取、更新和删除操作)。 通过...

    sql server 帮助文档官方版

    SQL Server 提供了多种安装方式,包括使用安装工具、Azure Data CLI 和 pip 等。用户可以根据需要选择合适的安装方式。此外,SQL Server 还提供了多种部署方式,包括单节点部署、Kubernetes 群集部署等。 管理和...

    sql server小小笔记

    这篇“SQL Server小小笔记”可能是针对SQL Server基础概念、操作技巧或者特定功能的总结,虽然描述内容过于简洁,但我们可以根据标签和通常的学习路径来深入探讨SQL Server的相关知识点。 1. **SQL Server基础知识*...

    郝斌SqlServer笔记.pdf

    郝斌SqlServer笔记 郝斌的SqlServer笔记是一个关于SqlServer的学习笔记,涵盖了SqlServer的基本概念、数据库管理、用户权限管理、表设计、主键和外键的设置、数据录入、查询执行等多个方面的知识点。 一、数据库...

    SQL课堂培训笔记疯汉三版【Oracle+Sqlserver+Mysql】

    SQL课堂培训笔记疯汉三版【Oracle+Sqlserver+Mysql】 根据韩顺平老视的视频教程整理的笔记,PDF格式

    SQL Server 2000应用教程电子笔记

    SQL Server 2000 笔记是我在上课的时候记的笔记,很实用的,无论是用sql还是Access数据库都可以供参考,里面有很多例子哦。

Global site tag (gtag.js) - Google Analytics