sqlserver查询
今天遇到这么一个问题:假设一个表里面有三个字段 NO1 NAME NO2 TYPE假设表里面有如下这么几条数据这里以前是先根据TYPE再根据NO1排序而现在需要换一种排序方式如下所示每条TYPE为1的数据下面可能有两条TYPE为2的数据也可能没有,TYPE为1的数据需要排在TYPE为2的数据的前面,他们根据NO2对应 ...
2024-01-10sqlserver表连接
数据库操作中,我们需要的结果可能在两张表甚至多张表中,这时候就需要表连接操作,多表查询中的各个表之间的字段会存在连接,比如主外键关联,可以使用主外键来关联每张表。表连接方式有以下几种:JOIN: 如果表中有至少一个匹配,则返回行LEFT JOIN(左连接): 即使右表中没有匹配,也从左...
2024-01-10sqlserver刷新视图
sqlserver 用于刷新当前数据库所有视图的存储过程create procedure dbo.proc_refreshviewasbegin declare @viewname varchar(100) declare cur_view cursor for select [name] from sysobjects where [type]="V" open cur_view fetch next from cur_view into @viewname while(@@...
2024-01-10sqlserver性能调优
相信不少的朋友,无论是做开发、架构的,还是DBA等,都经常听说“调优”这个词。说起“调优”,可能会让很多技术人员心头激情澎湃,也可能会让很多人感觉苦恼。当然,也有很多人对此不屑一顾,因为并不是每个人接触到的项目都很大,也不是每个人做的项目都对性能要求很高。在主流的企业...
2024-01-10sqlserver发送邮件
-- BI EMAILdeclare @CC varchar(10),@MAIL varchar(500), @str varchar(800),@year varchar(4),@month varchar(2);declare @file_name varchar(50);declare @mail_subject varchar(50);declare @htmlBody varchar(m...
2024-01-10sqlserver实现分隔字符串
sqlserver 使用函数实现分隔字符串create function dbo.fn_split( @str_source nvarchar(max), @split_char nvarchar(100))returns @temp table( id int primary key identity(1,1), val varchar(max))asbegin declare @idx int,@split_len int set @str_source=rtrim(...
2024-01-10sqlserver取字符串拼音首字母
sqlserver 使用函数获取一个字符串的拼音首字母create function dbo.fn_getpinyin( @str nvarchar(max))returns nvarchar(max)asbegin declare @word nchar(1),@PY nvarchar(max) set @PY="" while len(@str)>0 begin set @word=left(@str,1) --如果非汉字字符,返回原字符 ...
2024-01-10sqlserver排序规则冲突问题解决
问题:在项目数据库开发中,有时我们编写的脚本,在本机执行是没有问题的,但部署到服务器的时候,却在脚本运行时报错了。报错的中英文错误提示信息分别如下。中文:无法解决 equal to 运算中 "SQL_Latin1_General_CP1_CI_AS" 和 "Chinese_PRC_CI_AS" 之间的排序规则冲突。English:Cannot resolve the collation conflict bet...
2024-01-10sqlserver分组排序取前三条数据
表结构: 方法1: select a.* from Table_Test as a where 3 > (select count(*) from Table_Test where Brand_Id = a.Brand_Id and AddTime > a.AddTime ) order by a.Brand_Id,a.AddTime desc方法2: select * from (select *,ROW_NUMBER() over( partition by B...
2024-01-10mysql与sqlserver有何区别
mysql与sql server区别:1、mysql支持的类型更多mysql支持enum,和set类型,sql server不支持。2、mysql支持的数据类型更少mysql不支持nchar,nvarchar,ntext类型。3、递增语句不同mysql的递增语句是AUTO_INCREMENT,而sql server是identity(1,1)。4、语法不同sql server默认导出表创建语句的默认值表示是((0)),而在mysql里面是不允许带两...
2024-01-10sqlserver百万级数据库优化方案
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from...
2024-01-10sqlserver事务处理的一些常见总结
begin tranupdate statement 1 ...update statement 2 ...delete statement 3 ...insert statement 4 ...commit tran这样编写的sql在其中第一个出现异常后还会执行下面的语句,请看下面的例子:create table demo(id int not null)gobegin traninsert into demo values (null)insert into demo values (2)commit ...
2024-01-10基于sqlserver的四种分页方式总结
第一种:ROW_NUMBER() OVER()方式select * from ( select *, ROW_NUMBER() OVER(Order by ArtistId ) AS RowId from ArtistModels ) as bwhere RowId between 10 and 20 ---where RowId BETWEEN 当前页数-1*条数 and 页数*条数--- 执行结果是:第二种方式:offset fetch next方式(SQL2012以上的版本才支持:...
2024-01-10SQLServer2005创建定时作业任务
SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点创建步骤:(使用最高权限的账户登录--sa)一、启动SQL Server代理(SQL Server Agent) 二、新建作业 三、设置作业常规属性四、设置作业步骤 五、设置作业计划六、点击"确定" 完成作业设置...
2024-01-10sqlServer实现去除字符串空格
说起去除字符串首尾空格大家肯定第一个想到trim()函数,不过在sqlserver中是没有这个函数的,却而代之的是ltrim()和rtrim()两个函数。看到名字所有人都 知道做什么用的了,ltrim()去除字符串左边的空格,rtrim()去除字符串右边的空格,要去除首尾空格同时使用这个两个函数就好了。测试:select ltrim(' test...
2024-01-10sqlserver锁表、解锁、查看销表的方法
锁定数据库的一个表 SELECT * FROM table WITH (HOLDLOCK)注意: 锁定数据库的一个表的区别SELECT * FROM table WITH (HOLDLOCK)其他事务可以读取表,但不能更新删除SELECT * FROM table WITH (TABLOCKX)其他事务不能读取表,更新和删除SELECT 语句中“加锁选项”的功能说明SQL Server提供了强大而完备的锁机制来帮助实...
2024-01-10SqlServer插入语句的并发问题
今天收到一个小学弟的求助,数据库插入偶尔重复,怎么在sql语句上进行解决。Q:学长,我导入excel数据的操作,平时使用好好的,怎么突然发生插入重复的问题?A:你是使用哪个ORM框架进行操作的? Q:什么是ORM框架?A:额……,你数据库怎么链接操作的? Q:我使用Connection对象进行链接操...
2024-01-10sqlserver如何通过pivot对数据进行行列转换
脚本:/*说明:sql server如何通过pivot对数据进行行列转换脚本来源:https://www.cnblogs.com/zhang502219048/p/12933347.html*/create table #t( [员工工号] nvarchar(50), [员工姓名] nvarchar(50), [月份] nvarchar(50), [工资] int)insert into #tvalues(N"01", N"张三", N"2020年01月", 2400) ,(...
2024-01-10修改计算机名并更新sqlserver中存储的服务器名称
1、 查看计算机名use master go select @@servername select serverproperty("servername")2、同步更新SQLserverif serverproperty("servername") <> @@servername begin declare @server sysname set @server = @@servername exec sp_dropserve...
2024-01-10sqlserver特殊字符查询问题及ESCAPE的使用
公司一个老项目,sql server的模糊查询时,查询条件包含 [] ,然后查询结果就一直为空查阅资料得知:如果 LIKE 模式中的转义符后面没有字符,则该模式无效并且 LIKE 返回 FALSE。如果转义符后面的字符不是通配符,则将放弃转义符并将该转义符后面的字符作为该模式中的常规字符处理。这包括百分号 (...
2024-01-10SqlServer游标的创建与使用熊泽
前言大家都对SqlServer视图、存储过程、触发器的创建与使用有一定的了解了,我们来看下什么是游标,怎么使用,什么时候用。SqlServer视图的创建与使用SqlServer存储过程的创建与使用SqlServer触发器的创建与使用 什么是游标1、游标的概念 游标(Cursor)是处理数据的一种方法,为了查看或者处理...
2024-01-10SqlServer索引的原理与应用详解
索引的概念索引的用途:我们对数据查询及处理速度已成为衡量应用系统成败的标准,而采用索引来加快数据处理速度通常是最普遍采用的优化方法。索引是什么:数据库中的索引类似于一本书的目录,在一本书中使用目录可以快速找到你想要的信息,而不需要读完全书。在数据库中,数据库程序使...
2024-01-1005使用axios/vueresource发送HTTP请求
1.1 axios 简介与安装 1、axios简介 1. vue本身不支持发送AJAX请求,需要使用vue-resource、axios等插件实现 2. axios是一个基于Promise的HTTP请求客户端,用来发送请求,也是vue2.0官方推荐的,同时不再对vue-resource进行更新和维护 3. 参考:GitHub上搜索axios,查看API文...
2024-01-10SQLserver系统视图查询
-- 查询所有表名、字段名、类型、长度select o.name, c.name,t.name,c.length from syscolumns c inner join systypes t on c.xtype= t.xtype inner join sysobjects o on c.id= o.id where o.xtype="u" order by o.name, c.name,t.name-- 所有数据都来自于这四张表--select * from sysobjects --select * ...
2024-01-10SqlServer使用STUFF拼接内容
--插入一下临时数据源with m as( select "张三" name,"语文"course,"89"score union all select "张三" name,"数学"course,"100"score union all select "张三" name,"英语"course,"40"score union all select "张三" name,"物理"course,"93"score union all select "张三" name,"地理"course,"95"score uni...
2024-01-10