Sql
文章平均质量分 55
flyingdream123
这个作者很懒,什么都没留下…
展开
-
将查询的列有多行时,拼接成一个字符串
sql原创 2022-01-06 13:54:25 · 363 阅读 · 0 评论 -
Sql事务实例
//语法 SET XACT_ABORT { ON | OFF } 注释 当 SET XACT_ABORT 为 ON 时,如果 Transact-SQL 语句产生运行时错误,整个事务将终止并回滚。为 OFF 时,只回滚产生错误的 Transact-SQL 语句,而事务将继续进行处理。编译错误(如语法错误)不受 SET XACT_ABORT 的影响。 SET XACT_ABORT ON BEGIN原创 2010-12-11 10:45:00 · 1472 阅读 · 1 评论 -
事务处理
ALTER PROCEDURE [dbo].[KX卡项_Delete]@卡项编号 varchar(20) AS SET NOCOUNT ON--不返回计数(表示受 Transact-SQL 语句影响的行数)。SET XACT_ABORT ON--如果 Transact-SQL 语句产生运行时错误,整个事务将终止并回滚。declare @ErrorMessage var原创 2011-07-28 10:26:50 · 454 阅读 · 0 评论 -
SQL重复记录查询
1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from peoplewhere peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)2、删除表中多余的重复记录,重复记录是根据单个字段(peopleId)来判原创 2011-06-24 11:12:00 · 740 阅读 · 0 评论 -
项目中用到的关于时间段不能重复的解决方法
string sql = "select ShipperQuoteMasterNo from SEGShipperQuoteMaster where ShipperQuoteMasterNo not in ( select ShipperQuoteMasterNo "+ "from SEGShipperQuoteMaster where CONVERT(varchar(10),QuoteE转载 2016-12-05 23:07:06 · 1079 阅读 · 0 评论 -
区间段是否存在重叠值
SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- =============================================-- Author: -- Create date: -- Description: 验证分类的开始值或结束值是否存在于列表中-- ================================原创 2017-02-21 10:43:07 · 510 阅读 · 0 评论 -
常用Sql语句
1.当表中有重复记录只取一条原创 2014-09-19 09:39:26 · 538 阅读 · 0 评论 -
SQL实现表名更改,列名更改,约束更改
修改表名格式:sp_rename tablename,newtablenamesp_rename tablename,newtablename修改字段名格式:sp_rename 'tablename.colname',newcolname,'column'sp_rename 'tablename.colname',newcolname,'column'添转载 2017-11-27 18:52:34 · 1024 阅读 · 0 评论 -
根据整数字符串列表,得到拆分后的表变量
GO/****** Object: UserDefinedFunction [dbo].[f_splitstring] Script Date: 03/15/2018 18:30:37 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO-- ==========================================...原创 2018-03-15 18:39:22 · 175 阅读 · 0 评论 -
根据已知的主键查询所有引用这个主键的外键约束的名称和表
如果是SQL Server 2005或之后的版本,可以从sys.foreign_keys 视图中查询假如主键表的名称是:PoSELECT OBJECT_SCHEMA_NAME(parent_object_id) AS SchemaName, OBJECT_NAME(parent_object_id) AS TableName ,Name FROM sys.foreign_keys WHERE...转载 2018-04-18 15:04:26 · 1115 阅读 · 0 评论 -
SQL日期比较
1. 当前系统日期、时间select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值例如:向日期加上2天select dateadd(day,2,'2004-10-15') --返回:2004-10-17 00:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。select datediff(day,'200...转载 2018-07-13 12:27:15 · 4713 阅读 · 0 评论 -
sql 查询速度慢
●查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)8、sp_lock,sp_who,活动的用户查看,原因是...转载 2018-07-13 12:28:32 · 242 阅读 · 0 评论 -
Oracle 中的Top写法
由于Oracle不支持select top 语句,所以在Oracle中经常是用order by 跟rownum的组合来实现select top n的查询。简单地说,实现方法如下所示:select 列名1 ...列名n from(select 列名1 ...列名n from 表名 order by 列名1)where rownum <=N(抽出记录数)order by ...转载 2018-07-27 13:14:50 · 6252 阅读 · 0 评论 -
生成有顺序的全球唯一GUID
USE [BeautySalon]GO/****** 对象: Table [dbo].[SYSSequentialId] 脚本日期: 08/29/2013 10:38:02 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[SYSSequentialId]( [RowGuid] [原创 2013-08-29 10:41:53 · 2781 阅读 · 0 评论 -
SQL Server 2005利用分区对海量数据的处理
超大型数据库的大小常常达到数百GB,有时甚至要用TB来计算。而单表的数据量往往会达到上亿的记录,并且记录数会随着时间而增长。这不但影响着数据库的运行效率,也增大数据库的维护难度。除了表的数据量外,对表不同的访问模式也可能会影响性能和可用性。这些问题都可以通过对大表进行合理分区得到很大的改善。当表和索引变得非常大时,分区可以将数据分为更小、更容易管理的部分来提高系统的运行效率。如果系统有多个CPU或转载 2013-05-16 10:33:15 · 755 阅读 · 0 评论 -
SQL把日期转换为季度来作查询
<br />Select Season = Case when month(日期) in (1,2,3) then '一季度'<br /> when month(日期) in (4,5,6) then '二季度'<br /> when month(日期) in (7,8,9) then '三季度'<br /> when month(日期) in (10,11,12) then '四季原创 2011-01-25 17:27:00 · 5757 阅读 · 0 评论 -
SQL SERVER中查找指定节点的所有子节点的示例函数
SQL SERVER中查找指定节点的所有子节点的示例函数原创 2011-05-21 09:16:00 · 430 阅读 · 0 评论 -
SQL SERVER中查找指定节点的所有子节点的示例函数
SQL SERVER中查找指定节点的所有子节点的示例函数原创 2011-05-21 09:16:00 · 689 阅读 · 0 评论 -
游标
DECLARE my_cursor CURSOR FOR SELECT MXGuid FROM SaleDetail WHERE 流水号=@流水号OPEN my_cursorFETCH NEXT FROM my_cursor INTO @Sal原创 2011-08-15 17:01:23 · 435 阅读 · 0 评论 -
更改sa密码失败
create procedure sp_password @old sysname = NULL, -- the old (current) password @new sysname, -- the new password @loginame sysname = NULL -- user to change pass转载 2012-02-22 10:33:55 · 1201 阅读 · 0 评论 -
sql行转列
select 订单号,付款时间,sum(case when 付款类别名称='现金' then 金额 else 0 end) 现金,sum(case when 付款类别名称='银行刷卡' then 金额 else 0 end) 银行刷卡,sum(case when 付款类别名称='现金券' then 金额 else 0 end) 现金券,sum(case when 付款类别名称='免单' t转载 2012-04-14 14:51:23 · 480 阅读 · 0 评论 -
SQL中使用WITH AS提高性能-使用公用表表达式(CTE)简化嵌套SQL
以下内容转自:http://wudataoge.blog.163.com/blog/static/80073886200961652022389/一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在转载 2013-05-20 15:35:53 · 693 阅读 · 0 评论 -
sql 操作字符串备忘(转)
select语句中只能使用sql函数对字段进行操作(链接sql server),select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不对的原因是indexof()函数不是sql函数,改成sql对应的函数就可以了。left()是sql函数。select 字段1 from 表1 where charindex('云',字段1)=1;字符串转载 2013-05-20 15:46:28 · 691 阅读 · 0 评论 -
ROW_NUMBER()用法(转)
ROW_NUMBER()用法(转) ROW_NUMBER()说明:返回结果集分区内行的序列号,每个分区的第一行从 1 开始。语法:ROW_NUMBER () OVER ( [ ] order_by_clause> ) 。备注:ORDER BY 子句可确定在特定分区中为行分配唯一 ROW_NUMBER 的顺序。参数:partition_by_clause> :将 FR转载 2013-05-20 15:47:15 · 566 阅读 · 0 评论 -
SQL Server数据库ROW_NUMBER()函数使用例子
SQL Server数据库ROW_NUMBER()函数使用详解 本文我们主要介绍了SQL Server数据库中ROW_NUMBER()函数的使用,并给出了大量的例子进行详细的说明,希望能够对您有所帮助。AD: 2013大数据全球技术峰会课程PPT下载 SQL Server数据库ROW_NUMBER()函数的使用转载 2013-05-20 15:49:24 · 582 阅读 · 0 评论 -
Sql分页
declare @PageSize int,@StartPage intset @PageSize=10 --每页大小set @StartPage=5 --第几页 SELECT * FROM (SELECT *,ROW_NUMBER() OVER (ORDER BY 会员编号 DESC) AS RowNumber FROM HY_会员档案 where 会员编号原创 2013-05-20 15:52:20 · 552 阅读 · 0 评论 -
在 Transact-SQL 中使用 TRY...CATCH
Transact-SQL 代码中的错误可使用 TRY…CATCH 构造处理,此功能类似于 Microsoft Visual C++ 和 Microsoft Visual C# 语言的异常处理功能。TRY…CATCH 构造包括两部分:一个 TRY 块和一个 CATCH 块。如果在 TRY 块内的 Transact-SQL 语句中检测到错误条件,则控制将被传递到 CATCH 块(可在此块中处理此错误)转载 2013-05-28 17:32:06 · 733 阅读 · 0 评论 -
在 Transact-SQL 中两种获取错误信息的方式
在 Transact-SQL 中两种获取错误信息的方式(1)在 TRY...CATCH 构造的 CATCH 块的作用域内,使用以下系统函数: ERROR_LINE(),返回出现错误的行号。 ERROR_MESSAGE(),返回将返回给应用程序的消息文本。该文本包括为所有可替换参数提供的值,如长度、对象名或时间。 ERROR_NUMBER() 返回错误号。 ERROR_PROCEDURE(),返回出现错误的存储过程或触发器的名称。如果在存储过程或触原创 2010-12-11 10:35:00 · 617 阅读 · 0 评论