
SQL Server
keli_Jun
在到达胜利之前,无法回头
展开
-
SQL进阶用法—子查询
子查询分类: 单行单列过滤条件子查询:子查询语句返回单行单列值作为结果 多行多列过滤条件子查询:子查询语句返回多行单列值作为结果 临表子查询:子查询语句返回临时列表(多行多列)作为结果 (1)单列过滤子查询案例:列出所有产品单价高于或等于最高产品单价50%产品的详情信息需求拆解:最终返回结果:产品详细信息 过滤数据列:产品单价 过滤条件:高于或等于最高产品单价50%# 普通SQL语句解答过程和思路## 第一步:查询产品最高售价,手动记录最高推荐售价SE原创 2020-07-08 18:02:15 · 392 阅读 · 0 评论 -
sql查询表内重复数据
MySQL 跟ORACLE持多字段的IN 和 NOT INSELECT * FROM 表名 aWHERE (a.重复字段1,a.重复字段2,a.重复字段3) IN (SELECT 重复字段1,重复字段2,重复字段3 FROM 表名 GROUP BY 重复字段1,重复字段2,重复字段3 HAVING COUNT(*) > 1)但SQL SERVER 不支持多字段的IN 和 NOT...原创 2020-03-19 10:57:32 · 569 阅读 · 0 评论 -
SQL Server分页
首先是一种通用的方法:利用top分页declare @pageIndex int=1, @pageSize int=7select * from (select top (@pageSize) * from(select top (@pageIndex*@pageSize) * from B_GoodsSKU order by NID asc) as temp_a order by...原创 2020-01-21 17:11:24 · 219 阅读 · 0 评论 -
SQL传参Map
思路:用varchar字符串进行传参,用“,”分割属性,用“;”分割个数,用SQL的临时表封装代码:declare @mapStr varchar(max) --key,val;key2,val2;建立临时表:if OBJECT_ID('tempdb..#tempTable') is not null drop table #tempTable create table...原创 2020-01-03 16:18:54 · 1026 阅读 · 0 评论 -
SQL Server用NOLOCK是为了避免出现卡死状态
以前遇到过,但仅限于听同事说加上NOLOCK好一些,今天仔细研究测试了下,终于理解了,那么加与不加到底区别在哪呢? 我先说下其区别,之后再做测试。 大家都知道,每新建一个查询,都相当于创建一个会话,在不同的查询分析器里面进行的操作,可以影响到其他会话的查询,极端的情况可能会一直处于阻塞中,哪怕只是一个很简单的查询都“特别慢”。 BEGIN TRAN 是开始一个事务的意思,开始之后可执行一些SQL语...原创 2019-08-31 18:05:48 · 879 阅读 · 0 评论 -
sqlserver游标不能order by排序的解决办法
set @shopNameCurSor = CURSOR SCROLL FOR (select ShopName from [Record].[dbo].[B_Order] where CreateTime >= @startTime and CreateTime <= @endTime group by ShopName order by ShopName)会报...原创 2019-09-16 11:28:39 · 3785 阅读 · 0 评论