![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
sql server
Grady_Ne
这个作者很懒,什么都没留下…
展开
-
NULLIF函数
例如下面的sql语句:select a/b 当b为0时,会出现‘除数为0的错误’所以要使用下面的语句 select a/NULLIF(b,0)NULLIF(b,0)的含义是:如果b=0的话,返回NULL,而不是0。如果一个变量作为除数的话,一般都要使用NULLIF函数作为判断...原创 2020-07-15 16:01:42 · 1444 阅读 · 0 评论 -
DATETIME
-- 数据库中用于存储 年月日时分秒类型的日期类型是DATETIMEDECLARE @times DATETIME ='2019-10-01 00:15:00'SELECT @timesSELECT CONVERT(VARCHAR(8),@times,8) -- 8表示的含义就是获取DATETIME类型的时分秒原创 2020-07-08 09:39:29 · 113 阅读 · 0 评论 -
PIVOT函数--行转列
首先我们来看下PIVOT函数的英文翻译:pivot:v 在枢轴上旋转(转动)首先声明下PIVOT函数的语法格式为:SELECT [字段1,2,3…] FROM [表名] -- 将从##TEST表中选出的一些字段作为原表。AS [原表别名]PIVOT( [聚合函数] ( [原表字段1] ) FOR [原表字段2] IN ( [原表2值1],[原表字段2值2]… ) ) AS [新表别名]下面以例子讲解PIVOT函数:1、首先建立一个全局临时表-- 建立一个全局临时表。...原创 2020-06-24 18:00:17 · 20137 阅读 · 2 评论 -
关于数据库中表的一些想法
一种类型的数据都可以做成一张表。对于整个工程项目来说,比如水泥生产的那个系统。基础数据表,例如人员信息表,物料信息表等这些存放基础数据的表。有了基础数据表之后,在基础数据表的基础上创建新的表,新创建的表既有原先的表的一些字段,又有新增加的一些字段。有点类似于面向对象中的集成。新创建的表和原先已经存在的表可通过公有的字段进行连接。查询的时候,我们可以从已经存在的表中选择我们需要的字段,通过分组,添加条件等可以将这些字段组成我们需要的临时表,方便我们进行查询。注意:在分组条件中不给哪个字段限制条件,原创 2020-06-24 16:52:57 · 168 阅读 · 0 评论 -
SQLServer常用操作
SQLServer中只执行光标所在行的语句:方法一:点击home键,然后shift+end,选中光标所在行,然后f5执行即可。方法二:点击end键,然后shif+home,选中光标所在行,然后f5执行即可。当前文档的行首:ctrl+home当前文档首首行:ctrl+home当前文档的尾行:ctrl+endSQLPrompt要是没有提示的话,先转换下数据库,然后再按ctrl+shift+d刷新下即可。...原创 2020-06-24 12:02:04 · 918 阅读 · 0 评论 -
SQLServer中的CAST函数
要求输出的结果保留两位小数:CAST( 传入的数值 AS DECIMAL(20,2))。回去后看看cast函数到底表示什么含义和用途。语法格式:cast(字段名 as 转换的类型),例子如下:DECLARE @times DATE = '2020-05-23'SELECT CAST(@times AS VARCHAR(20)) -- 将时间类型转换为字符串SELECT CAST('12' AS INT) -- 将字符串转换为整型SELECT CAST('2020-04-24' AS D原创 2020-06-24 11:38:31 · 6642 阅读 · 0 评论 -
临时表用途
用法:SELECT 字段1,字段2..... INTO #临时表名FROM ( 表名 )a原创 2020-06-23 09:44:11 · 155 阅读 · 0 评论 -
给定日期求与之相关的日期类型+convert函数的含义
一、给定一个日期,求出该日期上一天的日期,本月第一天的日期,上月第一天的日期,上月最后一天的日期。例如:定义一个日期DECLARE @times DATE = '2020-06-12'1、求昨天的日期,使用DATEADD函数DECLARE @yesterday DATE = DATEADD(DAY,-1,@times)2、求本月第一天的日期第一步:定义一个日期变量表示昨天的日期(必须先定义,再赋值,我也不知道为啥的)第二步:convert(varchar(8),@times) ..原创 2020-06-23 09:36:04 · 503 阅读 · 0 评论 -
数据库的重要性
数据库是由表,关系和操作组成的。为什么需要数据库?1、几乎所有的应用软件的后台都需要数据库2、数据库占用的空间小,易保存(数据库对数据进行合理的压缩)3、存储比较安全4、容易维护和升级。5、数据库移植比较方便补充三个文件类型:主要数据文件:(扩展名.mdf 是 primary data file 的缩写)主要数据文件包含数据库的启动信息,并指向数据库中的其他文件。用户数据和对象可存储在此文件中,也可以存储在次要数据文件中。每个数据库有一个主要数据文件。次要数据文件(扩原创 2020-06-22 22:08:28 · 5867 阅读 · 0 评论 -
DATEADD函数
使用DATEADD(DAY,-1,@times) 返回当前日期的前一天DECLARE @times DATE = '2020-06-18' -- 以这个日期为例-- 对日期进行操作,让其变成其前一天的形式SET @times = DATEADD(DAY,-1,@times),则变量@times就变成了2020-06-18的形式了。DATEADD函数是一个挺好用的函数,例子如下:DECLARE @times DATE='2020-02-23'SET @times = DATEADD(...原创 2020-06-22 00:26:38 · 1764 阅读 · 0 评论 -
插件SQL Prompt的一些使用想法
1、如果数据库中的对象有变化,需要手动刷新一下缓存。快捷键ctrl+shift+d内置代码段:ssf:SELECT * FROMbe:BEGIN....ENDfj:FULL JOIN 全连接lj:LEFT JOIN 左连接rj:RIGHT JOIN 右连接st100:SELECT TOP 100 * FROM 从表中查询前100条数据scf:SELECT COUNT(*) FROM 计数函数SQL Prompt自定义代码段:SQL Prompt-->...原创 2020-06-21 17:35:49 · 285 阅读 · 0 评论 -
如何将select 12,select 25合并成一行
别管了,现放代码SELECT t1.value, t2.valuefrom (SELECT 12 value, 1 id) t1 -- 虚拟表中必须给每个字段指定列名 LEFT JOIN (SELECT 25 value,1 id) t2ON t1.id=t2.id这个问题困扰我两天了,一直没有较好的解决方法,直到刚刚想出了这个方法。直接 select 12; select 25得到的就是一行一列的表。怎么将两个一行一列且没有列名的表合成一行呢?这里使用的是左连原创 2020-06-21 13:22:01 · 825 阅读 · 0 评论 -
多表查询练习
使用说明:将创建表的代码复制到sqlyog中去,打开架构设计器,观察表之间的关联。回答提出的六个问题。这六个问题很好,都有涉及,希望仔细观看。-- 面向对象中一种类型的东西可以做成一类-- 而数据库中一种类型的东西可以做成一张表,有点类似于面向对象中的类。-- 表中存储这种类型的基本属性。-- 部门表。只是规定了一些部门的属性。CREATE TABLE dept ( id INT PRIMARY KEY PRIMARY KEY, -- 部门id dname V..原创 2020-06-21 01:09:19 · 202 阅读 · 0 评论 -
一些问题
meter:计量器,计量表MeterCode:仪表编号ItemCode:参数编号ItemValue:参数值MeterType:介质类型UpdateUser:更新人员UpdateTime:更新时间ClassCode 班组编号,就是早中晚班原创 2020-06-20 01:11:57 · 129 阅读 · 0 评论 -
SQLPrompt在SQLServer中不能用的问题
打开sqlserver--》sqlprompt-->manage license -->refresh即可。原创 2020-06-19 11:13:38 · 2145 阅读 · 0 评论 -
row_number函数初探 + 添加非空约束+添加主键约束
SQLServer中为 id 添加非空约束:ALTER TABLE dbo.student ALTER COLUMN id INT NOT NULL注意:在添加非空约束前,id字段不能为空,否则添加不成功。通过建立临时表和ROW_NUMBER() OVER函数对表中重复的数据去重row_number() OVER (PARTITION BY COL1 ORDER BY COL2)表示根据COL1分组,COL1相同的分在一个组中,在分组内部根据 COL2排序,该函数 返回 结果集分..原创 2020-06-18 16:19:02 · 668 阅读 · 0 评论 -
SQLServer查看服务器版本和服务器名称
查询服务器版本和服务器名称SELECT @@VERSION AS 'SQL版本',@@SERVERNAME AS '服务器名称'结果如下图所示:SQLServer中创建了表在左侧的对象资源管理器中不显示?选中创建的表所在的数据库,点击刷新即可显示出来了哈。...原创 2020-06-18 14:22:49 · 4251 阅读 · 0 评论 -
SQLServer初始自定义函数
dbo:database owner的缩写,是数据库用户所有者的缩写。SELECT COL_LENGTH('stu','name') -- 返回字段的长度的函数SELECT COL_NAME(OBJECT_ID('db1.dbo.stu'),2) -- 返回字段名称的函数我的第一个SQLServer自定义函数功能:输入年龄,查找这个年龄的同学的姓名,并且返回其姓名。返回的是一个表格,所以这种函数成为表值函数CREATE FUNCTION getStuNameByAge(@Ag.原创 2020-06-18 13:26:56 · 395 阅读 · 0 评论 -
SQLServer中常用的数学函数
SELECT ABS(-3.3),ABS(-33) -- 绝对值函数SELECT PI() -- 求圆周率函数SELECT SQRT(9),SQRT(40) -- 求平方根的函数SELECT RAND(),RAND(),RAND() -- 生成随机数的函数SELECT ROUND(1.38,1),ROUND(1.38,0),ROUND(232.38,-1) -- 四舍五入函数,第二个参数表示保留小数点后几位SELECT SIGN(-24),SIGN(0),SIGN(24) -- 符号函数SE.原创 2020-06-18 09:44:32 · 624 阅读 · 0 评论 -
SQLServer中的常用字符串函数
SELECT ASCII('s'),ASCII('sql'),ASCII(1)SELECT CHAR(115),(49) -- 输出数字对应的字符 SELECT LEFT('football',4) -- 从左边进行截取字符串SELECT RIGHT('football',4) -- 从右边进行截取字符串SELECT STR(333.66) -- 将数字转换为字符串的函数SELECT REVERSE('abc') -- 字符串反转函数SELECT LEN('no'), -- 字符串长度函数.原创 2020-06-18 09:25:46 · 339 阅读 · 0 评论 -
安装SQL Server 2012时,安装路径不可选,为灰色的,怎么回事?
因为之前装了其他的软件,附带了sqlserver的组件,所以会限制了安装目录,把原来的软件卸载后先装sqlserver就可以选择了。原创 2020-06-15 17:26:04 · 6864 阅读 · 0 评论