首页 数据库 mysql教程 SQL笔记 [长期更新] (

SQL笔记 [长期更新] (

Jun 07, 2016 pm 05:43 PM
更新 笔记 长期

SQL笔记 [长期更新] (-2013.7) --tableA -- CREATE TABLE TABLEA( --Column1 VARCHAR (20), --Column2 VARCHAR (20), --Column3 VARCHAR (20), --Column4 int , --Column5 VARCHAR (20), --Column6 DATETIME --) /* --ROW_NUMBER() OVER(), case when 的用

SQL笔记 [长期更新] (-2013.7)

--tableA

--CREATE TABLE TABLEA(
--Column1 VARCHAR(20),
--Column2 VARCHAR(20),
--Column3 VARCHAR(20),
--Column4 int,
--Column5 VARCHAR(20),
--Column6 DATETIME
--)
/*
--ROW_NUMBER() OVER(), case when 的用法:
select ROW_NUMBER() OVER(Order by a.Column1,a.Column2) AS rowid
,CASE WHEN a.Column3 IS NOT NULL THEN(
CASE WHEN a.Column3='1' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'I'
WHEN a.Column3='2' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'II'
WHEN a.Column3='3' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'III'
WHEN a.Column3='4' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'IV'
WHEN a.Column3='5' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'V'
WHEN a.Column3='6' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'VI'
WHEN a.Column3='7' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'VII'
WHEN a.Column3='8' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'VIII'
WHEN a.Column3='9' AND a.Column4 IS NOT NULL AND a.Column4 > 0 THEN 'IX'
ELSE '' END -- +'('+CONVERT(VARCHAR(20),a.Column4)+')'
)ELSE '' END AS 类型编号
,
from TABLEA a
*/


/*
--本月第一天
SELECT CAST(CONVERT(VARCHAR(20), DATEADD(MONTH,-1, DATEADD(DAY,1-DATEPART(DAY,GETDATE()),DATEADD(MONTH, 1,GETDATE()))) ,112) AS DATETIME)
--本月最后一天
SELECT CAST(CONVERT(VARCHAR(20),DATEADD(DAY,-DATEPART(DAY,GETDATE()),DATEADD(MONTH, 1,GETDATE())) ,112) AS DATETIME)
--下个月第一天
SELECT CAST(CONVERT(VARCHAR(20), DATEADD(DAY,1-DATEPART(DAY,GETDATE()),DATEADD(MONTH, 1,GETDATE())) ,112) AS DATETIME)
*/




/* --复杂存储过程的使用示例:
create proc [SP_复杂存储过程的使用B] (
@ID1 VARCHAR(400)=''
,@ID2 VARCHAR (400)='sdf7fgef-f4b0-4sfe-8ecb-cbgefb0fcfgh' --''
,@RESULT VARCHAR(100) output
)
as

BEGIN
DECLARE @行号 INT =1
DECLARE @RESULT_temp VARCHAR(100)=''
SET @RESULT=''

WHILE (@行号
BEGIN
SET @RESULT_temp=''
EXEC SP_复杂存储过程的使用A @编号1=@ID1,@编号2=@ID2,@第几个类型=@行号,@RESULT=@RESULT_temp OUTPUT
IF @RESULT_temp IS NOT NULL AND @RESULT_temp ''
BEGIN
IF @RESULT='' --@行号=1
BEGIN
SET @RESULT=@RESULT_temp
END
ELSE
BEGIN
SET @RESULT+=','+@RESULT_temp
END
END
SET @行号+=1
END
END
*/



/* --以下是一个比较长的SQL语句,直到末尾结束(其中涉及到一些不常见的sql写法,值得收藏)
DECLARE @ID号 VARCHAR(50)='JXsfge' --放入报表文件的时候,香港虚拟主机,此行注释,服务器空间,即将@ID号当参数即可

DECLARE @i VARCHAR(400) =1
DECLARE @参数类型1 VARCHAR(20)='某某1'
DECLARE @参数类型2 VARCHAR(20)='某某2'
DECLARE @参数类型3 VARCHAR(20)='某某3'
DECLARE @参数类型11 VARCHAR(20)='某某11'
DECLARE @参数类型22 VARCHAR(20)='某某22'
DECLARE @参数类型33 VARCHAR(20)='某某33'
DECLARE @编号C VARCHAR(20)=''
DECLARE @CNAME VARCHAR(20)=@ID号
DECLARE @专业temp VARCHAR(400) =''
DECLARE @序号 INT =''

DECLARE @ROWS VARCHAR(400) =''
EXEC SP_复杂存储过程的使用C @某编号=@ID号,@ROWS1=@ROWS OUTPUT --可以得到输出的"行数"信息

--声明临时表@t_TableA、@t_TableX
declare @t_TableA table(j VARCHAR(10),标记 VARCHAR(50),专业 VARCHAR(50),序号 VARCHAR(10),某号A VARCHAR(50),CISLATEST VARCHAR(50))
declare @t_TableX table(j VARCHAR(10),标记 VARCHAR(50),专业 VARCHAR(50),序号 VARCHAR(10),某号A VARCHAR(50),某号名称 VARCHAR(50),
备注 VARCHAR(50),英文名称 VARCHAR(500))
--开始循环
WHILE (CONVERT(int,@i))=(CONVERT(int,@ROWS))--@i=@ROWS
BEGIN
PRINT @i

INSERT INTO @t_TableA (j,标记,专业,序号,某号A,CISLATEST)(
SELECT TOP 1 * FROM (
SELECT ROW_NUMBER() OVER(ORDER BY TABLEB.专业 DESC,TABLEB.某号A ASC) AS j ,
CASE WHEN TABLEB.专业 ='计算机' THEN 'COM'
WHEN TABLEB.专业 ='英语' THEN 'EN'
WHEN TABLEB.专业 ='电子商务' THEN 'EM'
WHEN TABLEB.专业 ='国际贸易' THEN 'ITRADE'
WHEN TABLEB.专业 ='统计分析' THEN 'M'
WHEN TABLEB.专业 ='城市建设' THEN 'C'
WHEN TABLEB.专业 ='系统维护' THEN 'SYS'
ELSE '' END AS 专业,
'1' AS 序号,TABLEB.IDA AS 某号A,TABLEB.CISLATEST
FROM TABLEB
WHERE TABLEB.某号A = @ID号 AND TABLEB.CISLATEST='1'
) AS m1 WHERE m1.j=(CONVERT(int,@i))
)

--调用方式,@时间 为返回值
SET @某号A=(SELECT TOP 1 某号A FROM @t_TableA WHERE j=(CONVERT(int,@i)))
PRINT @某号A

IF(@专业temp =(SELECT TOP 1 专业 FROM @t_TableA WHERE j=(CONVERT(int,@i))))
BEGIN
SET @序号+=1
END
ELSE
BEGIN
SET @序号=1
SET @专业temp=(SELECT TOP 1 专业 FROM @t_TableA WHERE j=(CONVERT(int,@i)))
END

SET @参数类型1=''
SET @参数类型2=''
SET @参数类型3=''
SET @参数类型11=''
SET @参数类型22=''
SET @参数类型33=''

EXEC SP_复杂存储过程的使用B @类型=@参数类型1,@CNAME=@CNAME,@时间=@参数类型11 OUTPUT,@某编号=''
EXEC SP_复杂存储过程的使用B @类型=@参数类型2,@CNAME=@CNAME,@时间=@参数类型22 OUTPUT,@某编号=''
EXEC SP_复杂存储过程的使用B @类型=@参数类型3,@CNAME=@CNAME,@时间=@参数类型33 OUTPUT,@某编号=@编号C OUTPUT --可以同时输出多个结果

DELETE FROM @t_TableA --清空临时表

PRINT '参数类型11 :'+@参数类型11+' 参数类型22:'+@参数类型22+' 参数类型33:'+@参数类型33


--直接全部显示
BEGIN
INSERT INTO @t_TableX (j,标记,专业,序号,某号A ,某号名称,备注)(
SELECT TOP 1 * FROM (
SELECT ROW_NUMBER() OVER(ORDER BY TABLEB.专业 DESC,TABLEB.某号A ASC) AS j ,
CASE WHEN TABLEB.专业 ='计算机' THEN 'COM'
WHEN TABLEB.专业 ='英语' THEN 'EN'
WHEN TABLEB.专业 ='电子商务' THEN 'EM'
WHEN TABLEB.专业 ='国际贸易' THEN 'ITRADE'
WHEN TABLEB.专业 ='统计分析' THEN 'M'
WHEN TABLEB.专业 ='城市建设' THEN 'C'
WHEN TABLEB.专业 ='系统维护' THEN 'SYS'
ELSE '' END AS 专业,
'1' AS 序号,TABLEB.IDA AS 某号A,TABLEB.CISLATEST,
@参数类型11+@参数类型22+@参数类型33
FROM TABLEB
WHERE 序号= @ID号 AND TABLEB.CISLATEST='1'
) AS m1 WHERE m1.j=(CONVERT(int,@i))
)
END
SET @i+=1

END

SELECT j,标记,专业,序号,某号A ,某号名称,备注 FROM @t_TableX

*/


 

下载地址:

posted on

,香港虚拟主机
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

暴雪战网更新一直卡在45%怎么解决? 暴雪战网更新一直卡在45%怎么解决? Mar 16, 2024 pm 06:52 PM

  暴雪战网更新一直卡在45%怎么解决?近期有很多人在更新软件的时候,都是卡在45%的进度条,重启多次还是会卡住,那么这种情况应该要如何解决,我们可以通过重新安装客户端、切换地区、删除文件的方式来处理,本期软件教程就来分享操作步骤,希望能够给更多的人带来帮助。  暴雪战网更新一直卡在45%怎么解决  一、客户端  1、首先需要确认你的客户是官网下载的官方版本。  2、如果不是的话,用户可以进入亚服网址来进行下载。  3、进入以后点击右上角的下载就可以了。  注意:安装的时候一定不要选择简体中文。

小红书笔记怎么删除 小红书笔记怎么删除 Mar 21, 2024 pm 08:12 PM

小红书笔记怎么删除?在小红书APP中是可以编辑笔记的,多数的用户不知道小红书笔记如何的删除,接下来就是小编为用户带来的小红书笔记删除方法图文教程,感兴趣的用户快来一起看看吧!小红书使用教程小红书笔记怎么删除1、首先打开小红书APP进入到主页面,选择右下角【我】进入到专区;2、之后在我的专区,点击下图所示的笔记页面,选择要删除的笔记;3、进入到笔记页面,右上角【三个点】;4、最后下方会展开功能栏,点击【删除】即可完成。

第七史诗2月22日更新:奇迹女仆王国第二周开启 第七史诗2月22日更新:奇迹女仆王国第二周开启 Feb 21, 2024 pm 05:52 PM

第七史诗已经确定将于2月22日中午11点进行不停机更新,本次更新为我们带来超级多新的活动和内容,包括莱娅和甜蜜奇迹限定召唤几率UP、神秘卡池更新、特别支线故事奇迹女仆王国第二周开启等,一起来看看本次的更新吧。手游更新时间表第七史诗2月22日更新:奇迹女仆王国第二周开启※「莱娅」&「甜蜜奇迹」限定召唤几率UP!■限定召唤几率UP时间:-2024/02/22(周四)11:00~2024/03/07(周四)10:59■角色属性&职业:自然属性、战士■角色简介:四人乐队【奇迹女仆王国】的副主唱兼贝

小红书发布过的笔记不见了怎么办?它刚发的笔记搜不到的原因是什么? 小红书发布过的笔记不见了怎么办?它刚发的笔记搜不到的原因是什么? Mar 21, 2024 pm 09:30 PM

作为一名小红书的用户,我们都曾遇到过发布过的笔记突然不见了的情况,这无疑让人感到困惑和担忧。在这种情况下,我们该怎么办呢?本文将围绕“小红书发布过的笔记不见了怎么办”这一主题,为你详细解答。一、小红书发布过的笔记不见了怎么办?首先,不要惊慌。如果你发现笔记不见了,保持冷静是关键,不要慌张。这可能是由于平台系统故障或操作失误引起的。检查发布记录很简单。只需打开小红书App,点击“我”→“发布”→“所有发布”,就可以查看自己的发布记录。在这里,你可以轻松找到之前发布的笔记。3.重新发布。如果找到了之

更新pip版本的简单步骤:1分钟内完成 更新pip版本的简单步骤:1分钟内完成 Jan 27, 2024 am 09:45 AM

一分钟搞定:如何更新pip版本,需要具体代码示例随着Python的快速发展,pip成为了Python包管理的标准工具。然而,随着时间的推移,pip版本也在不断更新,为了能够使用最新的功能和修复可能的安全漏洞,更新pip版本是非常重要的。本文将介绍如何在一分钟内快速更新pip,并提供具体的代码示例。首先,我们需要打开命令行窗口。在Windows系统中,可以使用

小红书怎么在笔记中添加商品链接 小红书在笔记中添加商品链接教程 小红书怎么在笔记中添加商品链接 小红书在笔记中添加商品链接教程 Mar 12, 2024 am 10:40 AM

  小红书怎么在笔记中添加商品链接?在小红书这款app中用户不仅可以浏览各种内容还可以进行购物,所以这款app中关于购物推荐、好物分享的内容是非常多的,如果小伙伴在这款app也是一个达人的话,也可以分享一些购物经验,找到商家进行合作,在笔记中添加连接之类的,很多人都愿意使用这款app购物,因为不仅方便,而且有很多达人会进行一些推荐,可以一边浏览有趣内容,一边看看有没有适合自己的衣服商品。一起看看如何在笔记中添加商品链接吧!小红书笔记添加商品链接方法  在手机桌面上打开app。  在app首页点击

如何在Ubuntu 24.04上安装Angular 如何在Ubuntu 24.04上安装Angular Mar 23, 2024 pm 12:20 PM

Angular.js是一种可自由访问的JavaScript平台,用于创建动态应用程序。它允许您通过扩展HTML的语法作为模板语言,以快速、清晰地表示应用程序的各个方面。Angular.js提供了一系列工具,可帮助您编写、更新和测试代码。此外,它还提供了许多功能,如路由和表单管理。本指南将讨论在Ubuntu24上安装Angular的方法。首先,您需要安装Node.js。Node.js是一个基于ChromeV8引擎的JavaScript运行环境,可让您在服务器端运行JavaScript代码。要在Ub

提灯与地下城2月29日更新:重制版 ╳「哪吒传奇」联动 提灯与地下城2月29日更新:重制版 ╳「哪吒传奇」联动 Feb 28, 2024 am 08:13 AM

提灯与地下城已经确定将于2月29日更新,更新之后会上线提灯与地下城重制版本,而且重制版本还会与哪吒传奇联动,重制版本还带来全新职业,玩家可以直接转职哦,地下城内容也将拓展,开放全新副本区域等。手游更新时间表提灯与地下城2月29日更新:重制版╳「哪吒传奇」联动版本重点内容全新职业,邀您转职什么?提灯者竟然可以转职了?如此炫酷的装备真是让人眼馋,听说,转职之后,提灯者还能学习很多超帅的技能,五郎直接惊呼:泰裤辣!哪吒传奇,联动来袭!踩着那风火轮,乾坤圈手中拿♫~智勇双全的小英雄:哪吒和小龙女,即将来

See all articles