![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sql server
浊尘
指鹿为马,不负韶华。
展开
-
sql server 删除指定字符串
【代码】sql server 删除指定字符串。原创 2023-08-08 18:02:49 · 530 阅读 · 0 评论 -
sql server数据库资源池连接池爆满处理
超时时间已到,但是尚未从池中获取链接。原创 2023-02-10 11:33:42 · 1902 阅读 · 0 评论 -
sql server 创建存储过程 查看死锁 死锁处理
【代码】sql server 查看死锁 死锁处理。原创 2023-02-10 11:24:12 · 371 阅读 · 0 评论 -
sql server向存在表添加字段
add comment DECIMAL – 指定需要添加的字段和数据类型、参数。alter table t_student --选择需要添加字段的信息表。原创 2023-01-09 16:30:29 · 394 阅读 · 0 评论 -
sql作业失败,找不到存储过程
查看历史纪录时发现报错后来发现原因是未选择执行的数据库,需要选择你存储过程所在的数据库,不要使用默认的master数据库修改之后再启用作业解决!原创 2022-03-04 15:52:42 · 4192 阅读 · 0 评论 -
sql not like 数据遗漏
在一NULL列,两者LIKE并NOT LIKE反对任何搜索字符串将返回NULL。或者是使用 not exists()原创 2022-10-19 14:05:10 · 1697 阅读 · 0 评论 -
sql语句中判断是否为数字
2)特殊情况下使用PatIndex()函数,例如:只允许包含0到9的数字和小数点,但是,多个小数点也会匹配成功,所以最好配合IsNumeric使用。1)IsNumeric(参数)函数,如果“参数”的计算结果是有效的数字类型,返回1,否则返回0。原创 2022-10-24 15:21:59 · 2782 阅读 · 0 评论 -
sql server两行相减
【代码】sql server两行相减。原创 2022-10-19 09:29:21 · 1775 阅读 · 0 评论 -
sql server行转列(pivot),列转行(unpivot)
可以使用 PIVOT 和 UNPIVOT 关系运算符将表值表达式更改为另一个表。 PIVOT 通过将表达式中的一个列的唯一值转换为输出中的多列,来轮替表值表达式。 PIVOT 在需要对最终输出所需的所有剩余列值执行聚合时运行聚合。 与 PIVOT 执行的操作相反,UNPIVOT 将表值表达式的列轮换为列值。PIVOT 提供的语法比一系列复杂的 SELECT…CASE 语句中所指定的语法更简单和更具可读性。PIVOT (行转列)原表pivot 后列转行(unpivot)原表unpivot 后.原创 2022-06-09 03:24:39 · 3791 阅读 · 0 评论 -
sql 大小写转换(upper,lower)
将字符串全部转换成大写输出lower将字符串全部转换成小写输出首字母大写,其他小写left(‘abCdsE’,1):截取左边第1位字符串。len(‘abCdsE’):获取字符串长度。SUBSTRING(‘abCdsE’,2,len(‘abCdsE’)):截取从第2位到最后一位字符串。输出...原创 2022-06-09 01:37:31 · 3789 阅读 · 0 评论 -
sql 删除表中重复记录
sql删除重复数据输出说明a. 从表p1取出记录;b. 拿着第1条记录去表p2查找满足WHERE的记录,代入该条件p1.age=p2.age and p1.id>p2.id后,发现没有满足的,所以不用删掉记录1;c. 记录2同理;d. 拿着第3条记录去表p2查找满足WHERE的记录,发现有一条记录满足,所以要从p1删掉记录3;e. 3条记录遍历完,删掉了1条记录,这个DELETE也就结束了。...原创 2022-06-09 01:14:39 · 608 阅读 · 0 评论 -
sql 让库存根据字段数量进行扣除
建立测试表、添加数据create table #check_wl(ids int,name varchar(200),sex int,stocks int,nums int)insert into #check_wl values(1,'001',1,1000,100)insert into #check_wl values(2,'001',2,1000,200)insert into #check_wl values(3,'002',1,1000,300)insert into #原创 2022-04-19 17:02:24 · 686 阅读 · 0 评论 -
SQL中字符串截取函数
1、left(name,4)截取左边的4个字符列:SELECT LEFT(201809,4) 年结果:20182、right(name,2)截取右边的2个字符SELECT RIGHT(201809,2) 月份结果:093、SUBSTRING(name,5,3) 截取name这个字段 从第五个字符开始 只截取之后的3个字符SELECT SUBSTRING(‘成都融资事业部’,5,3)结果:事业部4、SUBSTRING(name,3) 截取name这个字段 从第三个字符开始,之后的所有个字符转载 2022-04-16 16:26:56 · 5827 阅读 · 0 评论 -
SQL条件判断语句(case when zhen ,isnull)
case when then语法:case when 条件 then 值else 值 end说明:case函数只返回第一个符合条件的值示例:create table #check_wl(id int,name varchar(200),sex int)insert into #check_wl values(1,'张三',1)insert into #check_wl values(2,'李四',1)insert into #check_wl values(3,'王五',2)原创 2022-04-16 16:16:45 · 953 阅读 · 0 评论 -
sql 定时作业
打开sql server 代理右键新建作业填写作业名称点击步骤,新建步骤步骤名称,填写要执行的sql语句,或者存储过程,然后确定点击计划,新建填写计划确定,确定,完成!右键查看作业状态...原创 2022-03-03 17:33:51 · 276 阅读 · 0 评论 -
sql SET NOCOUNT ON(不显示受影响行数)
说明:不显示结果集中返回显示受T-SQL语句或则usp影响的行计数信息。可用来提高程序性能。ON:不显示计数,但也更新全局变量@@RowCountOFF:显示计数;正常情况下消息输出SELECT * FROM ICStockBill where FTranType=10(7 行受影响)完成时间: 2022-03-03T15:37:59.1180227+08:00SET NOCOUNT ONSET NOCOUNT ON;SELECT * FROM ICStockBill whe原创 2022-03-03 15:43:40 · 912 阅读 · 0 评论 -
sql 事务 Transaction(含常用全局变量)
说明将若干条 SQL 语句“打包”在一起,共同执行一个完整的任务,就是事务。事务由一条或者多条 SQL 语句构成。事务有一个最显著的特征,就是它包含的所有 SQL 语句作为一个整体向数据库提交,只有所有的 SQL 语句都执行完成,整个事务才算成功,一旦某个 SQL 语句执行失败,整个事务就失败了。事务失败后需要回滚所有的 SQL 语句。事务中的所有 SQL 语句是一个整体,要么全部执行成功,要么全部执行失败。属性原子性一个事务中的所有 SQL 语句,要么全部执行成功,要么全部执行失败,不会结束原创 2022-03-02 11:00:28 · 596 阅读 · 0 评论 -
sql 父id生成子id row_number()
说明语法格式:row_number() over(partition by 分组列 order by 排序列 desc)分组列和排序列都可以多个字段组合可用于父表生成子表id示例建立测试数据create table #TEST_NUMBER_OVER( id varchar(10) not null, entityid varchar(10) null, vlue varchar(20) null)insert into #TEST_NUMBER原创 2022-02-28 12:16:35 · 431 阅读 · 0 评论 -
sql 游标循环(cursor)
说明游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。每个游标区都有一个名字,用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。游标是处理结果集的一种机制吧,它可以定位到结果集中的某一行,多数据进行读写,也可以移动游标定位到你所需要的行中进行操作数据。一般复杂的存储过程,都会有游标的出现,他的用处主要有: 定位到结果集中的某一行。对当前位置的数据进行读写。可以对结果集中的数据单独操作,而不是整行执行相同的操作。是面向集合的数据库管理系原创 2022-02-24 08:54:29 · 3835 阅读 · 0 评论 -
sql 判断是否有记录(exists)
说明EXISTS 运算符用于判断查询子句是否有记录,如果有一条或多条记录存在返回 True,否则返回 False。EXISTS 可以与 NOT 一同使用。示例判断系统中是否存在sal_order_test表if exists(select * from sal_order_test)beginprint '存在'endelse print '不存在'输出:存在完成时间: 2022-02-22T16:13:01.6429757+08:00...原创 2022-02-22 16:21:55 · 4657 阅读 · 0 评论 -
sql 触发器(Insert,update,delete)
说明当对一个表进行insert操作时就会激活它执行。示例drop trigger [dbo].[Trigger_Insert_Test]--不能插入临时表CREATE TABLE sal_order_test (FID INT IDENTITY (1,1), FBILLNO VARCHAR(20) NOT NULL DEFAULT(''), FDATE VARCHAR(20) NOT NULL DEFAULT('') )CREATE TABLE sal_order_原创 2022-02-21 16:05:19 · 6649 阅读 · 0 评论 -
sql 去重 distinct
说明distinct语句中select显示的字段只能是distinct指定的字段。CREATE TABLE #TempBill (FID INT IDENTITY (1,1), FKFDate VARCHAR(20) NOT NULL DEFAULT('') )insert #TempBillselect getdate()select FKFDate from #TempBillselect distinct FKFDate from #TempBill去重前原创 2022-02-21 13:54:09 · 1950 阅读 · 0 评论 -
sql 类型转换(convert,cast)
convert()convert(要转换的类型,要转换的值)示例:select ‘orderid:’+CONVERT(varchar,2222222)结果:orderid:2222222日期转文本(改变样式):convert(varchar,日期,日期样式编码)示例:select GETDATE() 前,‘date:’+CONVERT(varchar,GETDATE(),106) 后结果:前 后2022-02-18 11:38:52.970 date:18 02原创 2022-02-18 11:43:43 · 1725 阅读 · 0 评论 -
sql 验证表object_id()
说明数据库中有一个系统表sysobjects,里面存储了数据库各个对象的信息。这个表存储了表,存储过程,触发器,视图等相关信息。该函数会返回指定对象的ID值,可以在sysobjects表中进行验证。语法object_id(‘objectname’)或者object(‘objectname’,‘type’)实例if OBJECT_ID( '[dbo].[CMK_BD_ComBrand]') IS NOT NULLprint '该表存在'else print '该表bu存在'...原创 2022-02-17 11:38:10 · 398 阅读 · 0 评论 -
sql 抛出异常raiserror()
说明用于抛出一个异常或错误。这个错误可以被程序捕捉到。实例declare @error_mes varchar(1000)set @error_mes='1314520886的ERP_ICStockBillEntry中间表数据的收料仓库编码不存在于系统中'raiserror(@error_mes,13,1,'张三')输出...原创 2022-02-17 11:23:40 · 949 阅读 · 0 评论 -
SQL HAVING筛选分组后的数据
说明在 SQL 中WHERE 关键字无法与聚合函数一起使用。HAVING 可以让我们筛选分组后的各组数据。语法SELECT column_name, aggregate_function(column_name)FROM table_nameWHERE column_name operator valueGROUP BY column_nameHAVING aggregate_function(column_name) operator value;实例select fid,SUM(fq原创 2022-02-17 11:01:02 · 1514 阅读 · 0 评论 -
sql 将查询结果插入已存在表
insert into #check_wlselect t1.FItemID PId,t2.FItemID,t2.FQty from ICBOM t1 left join ICBOMCHILD t2 on t1.FInterID =t2.FInterID where and FUseStatus=1072 and t2.FItemID>0union allselect t1.FItemID PId,t2.FItemID ,t2.FQty from ICBOM t1 left joi原创 2022-01-15 17:22:38 · 1171 阅读 · 0 评论 -
sql 创建表
create table #check_wl(MaxWL int,PId int,FItemID int,FQty int)create table 表名(字段名 字段类型,字段名 字段类型)原创 2022-01-15 16:57:29 · 211 阅读 · 0 评论 -
sql while循环
declare @count int=1while @count<=(select count(fwl) from #wlsNew)beginprint('hello word!')set @count=@count+1endwhile 条件begin执行的操作set @count=@count+1end原创 2022-01-15 16:55:14 · 687 阅读 · 0 评论 -
sql 递归,父子类查询
withtempas(select *from tableawhere ID =666union allselect b.*from tempinner join tablea b on b.ID=temp.ID)select *from temp原创 2022-01-13 14:59:57 · 1474 阅读 · 0 评论 -
sql server stuff()多行合并成一行
原数据查询:select t1.FBILLNO,t3.FNUMBER From T_SAL_ORDER t1 left join T_SAL_ORDERENTRY t2 on t1.FID=t2.FID left join T_BD_MATERIAL t3 on t2.FMATERIALID=t3.FMATERIALID where t3.FNUMBER='1.01' 原数据结果:FBILLNO FNUMBERXSDD000007 1.01XSDD000023 1.01XS原创 2021-12-30 20:22:10 · 1149 阅读 · 0 评论 -
sql 多表查询
select * from #StockTable001 union all select * from #StockTable002原创 2021-12-30 11:41:44 · 439 阅读 · 0 评论 -
SQL 添加天数
语句:select fdate,dateadd(day,1,fdate)From T_SAL_ORder where fdate=DATEADD(day,1,'2018-01-05')结果:fdate (无列名)2018-01-06 2018-01-07原创 2021-12-30 03:08:19 · 1052 阅读 · 0 评论