分类目录[SQL Server]
10 浏览
喜欢(0)

[SQL Server]SQL Server数据库中在创建存储过程前先检测是否存在,如果不存在则创建,如果存在则先删除再创建?

问题描述SQL Server数据库中,在创建存储过程前先检测是否存在,如果不存在则创建,如果存在则先删除再创建?方案一使用IF EXISTS语句判断,如下:IF EXISTS ( SELECT * FROM sysobjects WHERE id = object_id(N'[dbo].[MyProc]') and OBJECTP...

SQL Server 2019-07-11 09:38 0评论 0收藏
15 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何使用pivot函数将行转换成列(行列转换)?

问题描述SQL Server数据库中,在做某些场景下需要将数据行列转换进行查询,使用SQL语句应该如何实现呢?方案一如何是SQL Server 2005及以上版本,则可使用PIVOT函数进行行列的转换,如下:首先创建一个示例数据表并写入示例数据CREATE TABLE #yt ( [Store] int, [Week] int, [xCount] int);INSERT INTO #yt( [Store], [Week]...

SQL Server 2019-07-09 11:30 0评论 0收藏
10 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何返回INSERT INTO语句插入/写入数据后的记录值(比如ID等)?

问题描述SQL Server数据库中,有时候当我们使用INSERT INTO语句写入数据后,需要返回写入数据对应的自增ID或者GUID,以便根据此记录进行后续的操作。那么SQL语句如何实现返回记录值的操作呢?示例数据表结构:SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCREATE TABLE [dbo].[Customer]( [Id] [int] IDENTITY(1,1) NOT ...

SQL Server 2019-07-09 10:46 0评论 0收藏
AD 友情赞助
10 浏览
喜欢(1)

[SQL Server]SQL Server数据库中如何使用SQL语句查询指定日期当月的第一天?

问题描述SQL Server数据库中,使用SQL语句如何查询一个指定日期当月的第一天?比如指定日期为2019-07-08,需要使用SQL计算出2019年7月1日即2019-07-01,应该如何实现呢?方案一使用SQL的内置函数DATEADD和DATEDIFF,如下:SELECT DATEADD(month, DATEDIFF(month, 0, @mydate), 0) AS StartOfMonth方案二使用SQL的内置函数DATEF...

SQL Server 2019-07-08 17:29 0评论 0收藏
11 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何使用SQL语句删除指定数据库所有的数据表、视图、存储过程、触发器、主键、外键、约束以及所有的依赖关系等等?

问题描述SQL Server数据库中,使用SQL语句删除指定数据库所有的数据表、视图、存储过程、触发器、主键、外键、约束以及所有的依赖关系等等,以达到在不用重新创建一个新数据库的情况下清理数据库目的?特别注意:本文的脚本具有对数据库结构的完全破坏力,请看清楚之后根据实际情况使用!!!本文只提供解决问题的思路,不对你的执行结果负责!!!方案一USE YOUR_DATABASEGO/* 删除所有非系统内置的存储过程 */DECLARE @n...

SQL Server 2019-07-04 17:13 0评论 0收藏
46 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何将时间日期类型(DateTime)转换成字符串类型(varchar,nvarchar)?

问题描述SQL Server数据库中,如何将时间日期类型(DateTime)的数据转换成字符串类型(varchar,nvarchar),并对其进行yyyy-mm-dd形式的格式化输出?方案一使用SQL Server的CONVERT()函数,如下:SELECT LEFT(CONVERT(VARCHAR, GETDATE(), 120), 10)或者SELECT CONVERT(VARCHAR(10), GETDATE(), 120)关于C...

SQL Server 2019-07-02 17:54 0评论 0收藏
AD 友情赞助
12 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何修改数据列的数据类型?

问题描述SQL Server数据库中有一列的数据类型为varchar(50),现需要将其数据类型修改为nvarchar(200),如何使用SQL语句修改这列的数据类型呢?方案一SQL Server数据库支持使用SQL语句修改列的数据类型,语法如下:ALTER TABLE <TableName>ALTER COLUMN ColumnName DataType [NULL | NOT NULL];所以,修改数据列的SQL语句如下...

SQL Server 2019-07-02 15:50 0评论 0收藏
4 浏览
喜欢(0)

[SQL Server]SQL Server数据库中如何使用SQL语句查询出指定数据库的所有索引?

问题描述C#/.NET应用程序编程开发中,如何将JSON格式数据转换成XML格式,反之又如何将XML格式转换成JSON格式呢?方案一使用第三方组件库Json.NET,Json.NET内置了JSON与XML两种数据格式的相互转换,转换示例如下:XML转换成JSONstring xml = @"<?xml version='1.0' standalone='no'?><root&g...

SQL Server 2019-07-02 14:56 0评论 0收藏
84 浏览
喜欢(3)

SQL Server中编写自动生成指定时间段内按小时的连续的数据列表并按每个小时统计数据的SQL语句示例

前言在我们编写SQL语句的时候,有可能遇到这样的场景:有一张用户信息表,里面记录和用户的一些数据,如:ID,姓名,创建时间…,为了了解每天每个时段(按小时)的用户创建量数据,我们需要从这张用户信息表的数据来统计。其中有可能用户创建时间的小时部分不是连续的,但统计出来的数据需要按小时连续,缺失的小时使用SQL自动补齐。效果展示先看一下我已经为大家准备好的示例数据以及实现的SQL语句查询结果。示例数据:查询结果:以下是具体的操作步骤,提供完...

SQL Server 2019-04-18 11:05 1评论 1收藏
AD 友情赞助
138 浏览
喜欢(0)

sqlserver中判断数据表或临时表是否存在

sqlserver中判断数据表或临时表是否存在use dbName; --dbName 代表你的数据库goif object_id(N'tableName',N'U') is not null --tableName 代表你的数据表print '存在'else print '不存在'可在打印输出的地方进行你的业务操作

SQL Server 2018-12-05 11:12 0评论 0收藏
163 浏览
喜欢(3)

[SQL]SQL Server数据库使用CTE递归查询树形结构的层级深度实现语句

在以树形结构的数据库表设计中,我们可以使用SQL Server的CTE语句实现递归,来查询每条数据在树形节点中的层级深度,示例数据的表结构如下:IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[Area]') AND type in (N'U'))BEGINCREATE TABLE [dbo].[Ar...

SQL Server 2018-06-25 17:54 0评论 0收藏
1859 浏览
喜欢(0)

[SQL Server]SQL Server如何重命名一个数据表的表名?

问题描述在SQL Server数据库中,我们如何重命名一张已经存在的数据表的表名呢?比如使用类似如下的SQL查询语句:ALTER TABLE oldtable RENAME TO newtable;此SQL查询语句是错误的,要如何正确的重命名SQL Server数据库中已存在的数据表呢?方案一在SQL Server中, 如果需要使用SQL查询语句来重命名一张已经存在的数据表的表名,我们可以使用sp_name来重命名表名,如下:exec ...

SQL Server 2018-03-06 08:05 0评论 0收藏
1061 浏览
喜欢(0)

[SQL Server]SQL Server中如何将某些列的值按列分组并接连成单个字符串?

问题描述在SQL Server中如何将某些列的值按列分组并接连成单个字符串?比如有如下的示例数据:idNameValue1A41B82C9需要使用SQL语句将以上表格中的数据按照id分组,并将相同分组的Name和Value列对应的值连接起来,结果为如下所示:idColumn1A:4, B:82C:9要完成以上的需要,我们应该如何使用SQL来实现呢?方案一使用SQL的FOR XML ... PATH语句,如:注:此语句需要使用 SQL S...

SQL Server 2018-03-05 09:14 0评论 0收藏
299 浏览
喜欢(0)

[SQL Server]SQL Server中如何替换数据表中某个列中所以符合条件的行的字符串?

问题描述如题,假设当前有一张数据表,其中的某一列数据类型为字符串类型的,对应的所有数据行中均包含相同的字符串,现在需要将这个字符串全部替换成另外一个字符串,在SQL Server中,如何替换数据表中某个列中所以符合条件的行的字符串呢?方案一使用REPLACE()函数,如:update my_tableset path = replace(path, 'oldstring', 'newstring')注意:...

SQL Server 2018-03-04 08:59 0评论 0收藏
436 浏览
喜欢(0)

[SQL Server]SQL Server中如何从一张数据表中的某些字段值插入到另外一张已存在的数据表中呢?

问题描述如题,SQL Server中如何从一张数据表中的某些字段值插入到另外一张已存在的数据表中呢?假设有类似如下的SQL语句:SELECT col1, col2INTO dbo.TableTwoFROM dbo.TableOneWHERE col3 LIKE @search_key方案一在SQL Server数据库中,SELECT ... INTO ...语句查询并写入另一张只适用于指定写入的数据表不存在的情况,如果指定要写入的数据表...

SQL Server 2018-03-03 09:45 0评论 0收藏
235 浏览
喜欢(0)

[SQL Server]SQL Server中有哪些更好的分页的方法呢?

问题描述如题,我们从数据库读取数据,特别是读取大批量数据时需要使用分页功能,那么,在SQL Server 2005、SQL Server 2008、SQL Server 2012等数据库中,有哪些更高效的分页写法呢,包括分页时返回数据的总数?方案一在SQL Server 2005或者以上版本中,我们可以使用ROW_NUMBER()函数,如:SELECT *FROM ( SELECT ROW_NUMBER() OVER ( ...

SQL Server 2018-03-03 09:45 0评论 0收藏
305 浏览
喜欢(0)

[SQL Server]SQL Server是否有同时按两个字段查找最大值的函数?

问题描述如题,在SQL Server中,是否存在一个函数,可以按两个字段查询最大值,比如这样的查询语句:SELECT o.OrderId, MAX(o.NegotiatedPrice, o.SuggestedPrice)FROM Order o我们知道,在SQL Server中是有内置的MAX()函数,但这个内置的MAX()函数是用于返回一列中的最大值。NULL 值不包括在计算中,但它只是针对一个字段进行处理。提示:MIN 和 MAX ...

SQL Server 2018-02-10 10:36 0评论 0收藏
362 浏览
喜欢(1)

[SQL Server]SQL Server数据库中如何设置主键列为自增列?

问题描述在SQL Server数据库的数据表中,如何设置主键列为自增列。找遍了所有的列设置属性之后,仍然没找到在哪设置自增属性,那么SQL Server数据库的自增列到底在哪里设置,怎么设置呢?方案一请确保在需要设置成自增的列为int类型,这样,这个列才可能被设置成自增列,如下图:然后,将点击标识规范,将选项(是标识)设置成是,标识增量和标识种子按照自己的需求设置即可,默认值均为:1或者,我们也可以使用SQL语句,可设置某个列的自增标识...

SQL Server 2018-02-10 11:31 0评论 0收藏
393 浏览
喜欢(0)

[SQL Server]SQL Server中如何从一个数据表中删除某列?

问题描述如题,在数据库中有一个表MEN,其中包含了一些列(字段),比如:Fname,Lname,…现在需要删除其中的某个列(字段):Lname应该如何操作呢?方案一使用语法:ALTER TABLE TABLE_NAME DROP COLUMN COLUMN_NAME如:ALTER TABLE MEN DROP COLUMN Lname方案二如果在这一列上还有约束,那么需要先删除这一列上的所有约束,然后后才可以删除这个列,如果需要删除约束...

SQL Server 2018-02-10 10:50 0评论 0收藏
179 浏览
喜欢(0)

[SQL Server]SQL Server数据库中删除表的数据之后如何重置自增列的标识?

[SQL Server]SQL Server数据库中删除表的数据之后如何重置自增列的标识?方案一使用 DBCC CHECKIDENT ,语法如下:DBCC CHECKIDENT (table_name [, { NORESEED | { RESEED [, new_reseed_value ]}}])[ WITH NO_INFOMSGS ]使用方法如下:DBCC CHECKIDENT ('[TestTable]', RE...

SQL Server 2018-01-13 15:18 0评论 0收藏
AD 友情赞助