-
mssql关于一个表格结构的另外一种显示(表达意思不变)
一、需求 由于表达能力不好,直接上图。在mssql环境中需要把图1的表转化成图2的表: 图1 图2二、分析 图32.1创建表复制代码代码如下:createtable#tb(IDintprimarykey,Classnvarchar(max),[Subject]nvarchar(max),Scoreint)insertinto#tbvalues(1,'一(1)班','语文','92')insertinto#tbvalues(2,'一(1)班','数学','91')insertinto#tbvalues(3,'一(1)班','英语','93')insertinto#tbvalues(4,'一(2)班','数学','94')insertinto#tbvalu...
数据库操作教程 2022-09-23 16:50:12 -
sqlserver复制表从一个数据库到另一个数据库
/*不同服务器数据库之间的数据操作*/--创建链接服务器execsp_addlinkedserver'ITSV','','SQLOLEDB','远程服务器名或ip地址'execsp_addlinkedsrvlogin'ITSV','false',null,'用户名','密码'--查询示例select*fromITSV.数据库名...
数据库操作教程 2022-09-23 16:49:46 -
通过T_sql语句向其中一次填入一条数据或一次填入多条数据的方式填充数据
使用T_SQL创建数据库TestSchool创建一个学生表TblStudent创建学生成绩表TblScoreqtScoreId(成绩id,主键,自动编号)、tSId(学生编号)、tEnglish(英语成绩)、tMath(数学成绩)创建老师表TblTeacherqtTId、tTName、tTGender、tTAge、tTSalary、tTBirthday并使用T_sql语句向其中一次填入一条数据或一次填入多条数据的方式填入数据。(1)Insertinto表(列)select列1,列2union2)Insertinto表(列)select列1,列2from表3)Select列into新表名from旧表)复制代码代码如下:createdatabaseTestSchoolonprimary(name='TestSchool',filename='F:SQLServerTestSchool.mdf',size=10mb,filegrowth=10,maxsize=100mb)logon(name='TestSchool_log',filename='F:SQLServerTestSchool_l...
数据库操作教程 2022-09-23 16:49:15 -
sqlserver的一个有趣的bit位运算分享
sqlserver中没有bool类型,而是用bit类型来表示bool值,估计是为了节省存储空间。可是要想实现取反操作似乎就麻烦写了,比如类似下面这样的语句是不行的:updatecategorysetvisible=notvisiblewhereid=1,因为visible是bit类型,而不是bool类型...
数据库操作教程 2022-09-23 16:46:58 -
一个删选数据的例子,使用GROUP、DISTINCT实例解析
需求描述:一个表MyImage,列有:号码ID,路径PATH如:ID PATH1 C:/1 C:/1 D:/2 C:/2 C:/3 A:/3 C:/4 D:/写个SQL语句,返回这样的记录的ID号:相同ID存在不同PATH。如上例子,正确的结果应是:ID13(ID2没有不同PATH,ID4只有一条记录不存在不同PATH) 这是我的SQL语句:复制代码代码如下:selectIDfrom[MyImage]asA groupbyID having ( selectCOUNT(distinct(Path))from[MyImage]asBwhereB.ID=A.ID ) >1...
数据库操作教程 2022-09-23 16:46:43 -
SQLServer怎么找出一个表包含的页信息(Page)
前言在SQLServer中,如何找到一张表或某个索引拥有那些页面(page)呢?有时候,我们在分析和研究(例如,死锁分析)的时候还真有这样的需求,那么如何做呢?SQLServer2012提供了一个无文档的DMF(sys.dm_db_database_page_allocations)可以实现我们的需求,sys.dm_db_database_page_allocations有下面几个参数: @DatabaseId: 数据库的ID,可以用DB_ID()函数获取某个数据库或当前数据库的ID @TableId: 表的ID。我们可以使用OBJECT_ID()函数通过表名获取表ID...
数据库操作教程 2022-09-23 16:43:51 -
sql存储过程实例--动态根据表数据复制一个表的数据到另一个表
动态根据表数据复制一个表的数据到另一个表把track表的记录根据mac_id后两位数字,复制到对应track_?的表中如:mac_id=12345678910,则后两位10对应表为track_10,就把此记录复制到track_10中创建一个sub_track的存储过程实现:--创建一个名为sub_track的存储过程CREATEPROCEDUREsub_track()begindeclareiint;--定义循环变量iset@imei=0;--定义imei最后两位set@t_count=0;--定义表有多少条记录变量SETi=0;SELECTCOUNT(*)INTO@t_countFROMtrack;--获取表的条数whilei<=@t_countdo--循环SELECTRIGHT(mac_id,2)INTO@imeiFROMtrackORDERBYgpstimeDESCLIMITi,1;--获取imei最后两位set@imei=CONVERT(@imei,SIGNED);--转为数字--SQL语句set@sql1="(mac_id,mac_type,channel,type,x...
数据库操作教程 2022-09-23 16:43:15 -
SQLServer通过withas方法查询树型结构
一、withas公用表表达式 类似VIEW,但是不并没有创建对象,WITHAS公用表表达式不创建对象,只能被后随的SELECT语句,其作用: 1.实现递归查询(树形结构) 2.可以在一个语句中多次引用公用表表达式,使其更加简洁二、非递归的公共表达式 可以是定义列或自动列和selectinto效果差不多--指定列withwithTmp1(code,cName)as(selectid,NamefromClassUnis)select*fromwithTmp1--自动列withwithTmp2as(select*fromClassUniswhereAuthor='system')select*fromwithTmp2三、递归的方式 通过UNIONALL连接部分。通过连接自身whitas创建的表达式,它的连接条件就是递归的条件...
数据库操作教程 2022-09-23 16:43:03 -
sqlserver通过脚本进行数据库压缩全备份的方法【推荐】
问题:生产环境的数据库可能比较大,如果直接进行全备而不压缩的话,备份集就会占用了大量磁盘空间。给备份文件的存放管理带来不便...
数据库操作教程 2022-09-23 16:42:49 -
sqlserver使用公用表表达式CTE通过递归方式编写通用函数自动生成连续数字和日期
问题:在数据库脚本开发中,有时需要生成一堆连续数字或者日期,例如yearlyreport就需要连续数字做年份,例如dailyreport就需要生成一定时间范围内的每一天日期。而自带的系统表master..spt_values存在一定的局限性,只是从0到2047(验证脚本:select*frommaster..spt_valuesbwhereb.type='P'),也不能直接生成连续日期...
数据库操作教程 2022-09-23 16:42:36 -
SQLServer如何通过创建临时表遍历更新数据详解
前言:前段时间新项目上线为了赶进度很多模块的功能都没有经过详细的测试导致了生成环境中的数据和实际数据对不上,因此需要自己手写一个数据库脚本来更新下之前的数据。(线上数据库用是SQLServer2012)关于数据统计汇总的问题肯定会用到遍历统计汇总,那么问题来了数据库中如何遍历呢?好像并没有for和foreach这种类型的功能呀,不过关于数据库遍历最常见的方法当然是大家经常会想到的游标啦,但是这次我并没有使用游标,而是通过创建临时表的方式来更新遍历数据的...
数据库操作教程 2022-09-23 16:42:01 -
元宇宙新鲜事“元宇宙第一股”通过上市聆讯河南银保监局发布风险提示
今日新鲜事有:云南省市场监督管理局发布两项区块链地方标准。财联社|元宇宙NEWS9月22日讯今日新鲜事有:“元宇宙第一股”飞天云动通过港交所上市聆讯9月22日,据港交所披露,飞天云动科技有限公司通过港交所上市聆讯,申万宏源香港为独家保荐人...
区块链 2022-09-22 18:03:28