Questions tagged «sql-server»

Microsoft SQL Server是一个关系数据库管理系统(RDBMS)。将此标签用于所有SQL Server版本,包括Compact,Express,Azure,Fast-track,APS(以前称为PDW)和Azure SQL DW。请勿将此标签用于其他类型的DBMS(MySQL,PostgreSQL,Oracle等)。除非该标签与数据库直接相关,否则请勿将其用于软件和移动开发问题。


6
SQL Server:列到行
寻找优雅的(或任何)解决方案以将列转换为行。 这是一个示例:我有一个具有以下架构的表: [ID] [EntityID] [Indicator1] [Indicator2] [Indicator3] ... [Indicator150] 这是我想要得到的结果: [ID] [EntityId] [IndicatorName] [IndicatorValue] 结果值为: 1 1 'Indicator1' 'Value of Indicator 1 for entity 1' 2 1 'Indicator2' 'Value of Indicator 2 for entity 1' 3 1 'Indicator3' 'Value of Indicator 3 for entity 1' 4 2 'Indicator1' 'Value of …
128 sql  sql-server  tsql  unpivot 

8
如何在SQL Server XML列中查询值
我将以下XML存储在RolesSQL Server数据库的XML列(称为)中。 <root> <role>Alpha</role> <role>Beta</role> <role>Gamma</role> </root> 我想列出所有在其中具有特定角色的行。此角色由参数传递。
127 sql  sql-server  xml  xquery 




4
取消透视列名称
我有一张StudentMarks有栏的桌子Name, Maths, Science, English。数据就像 Name, Maths, Science, English Tilak, 90, 40, 60 Raj, 30, 20, 10 我想像下面这样安排它: Name, Subject, Marks Tilak, Maths, 90 Tilak, Science, 40 Tilak, English, 60 使用unpivot,我可以正确获取Name,Marks,但无法将源表中的列名获取到Subject所需结果集中的列。 我该如何实现? 到目前为止,我已经到达以下查询(获取名称,商标) select Name, Marks from studentmarks Unpivot ( Marks for details in (Maths, Science, English) ) as UnPvt

10
插入到选择
使用之间有什么区别 SELECT ... INTO MyTable FROM... 和 INSERT INTO MyTable (...) SELECT ... FROM .... ? 从BOL [ INSERT,SELECT ... INTO ]中,我知道使用SELECT ... INTO将在默认文件组上创建插入表(如果尚不存在),并且该语句的日志记录取决于恢复情况数据库的模型。 哪种说法更可取? 还有其他性能影响吗? 通过INSERT INTO ...进行SELECT ... INTO的好用例是什么? 编辑:我已经说过,我知道SELECT INTO ...会创建一个不存在的表。我想知道的是SQL包含此语句是有原因的,它是什么?它是做幕后的东西不同的插入行,或者是它的顶部只是语法糖CREATE TABLE和INSERT INTO。

6
T-SQL中的SQL Server正则表达式
是否有SP用于SQL Server的以T-SQL(无CLR,无扩展的纯T-SQL)编写的正则表达式库,并且可以与共享主机一起使用? 编辑: 谢谢,我知道PATINDEX,LIKE,xp_ sps和CLR解决方案 我也知道这不是正则表达式的最佳选择,这个问题是理论上的:) 减少的功能也可以接受
127 sql-server  regex  tsql 

21
使用T-SQL查找最后一次出现的子字符串的索引
有没有一种简单的方法可以使用SQL查找字符串最后一次出现的索引?我现在正在使用SQL Server 2000。我基本上需要.NET System.String.LastIndexOf方法提供的功能。稍作谷歌搜索就发现了这个功能 - 检索上一个索引的功能 -但是如果您传递“文本”列表达式则无法使用。只要您要搜索的文本长度为1个字符,其他地方找到的其他解决方案就可以使用。 我可能必须准备一个功能。如果这样做,我会将其发布在这里,以便大家查看并使用。

7
将HashBytes转换为VarChar
我想在SQL Server 2005中获取字符串值的MD5哈希值。我使用以下命令执行此操作: SELECT HashBytes('MD5', 'HelloWorld') 但是,这将返回VarBinary而不是VarChar值。如果我尝试转换0x68E109F0F40CA72A15E05CC22786F8E6为VarChar,我得到的há ðô§*à\Â'†øæ不是68E109F0F40CA72A15E05CC22786F8E6。 是否有任何基于SQL的解决方案? 是
127 sql  sql-server 


5
什么是用于存储JSON字符串的最佳SQL数据类型?
存储JSON字符串的最佳SQL数据类型是什么? static List<ProductModel> CreateProductList() { string json = @"[ { ProductId: 1, ProductCode: 'A', Product: 'A' }, { ProductId: 2, ProductCode: 'B', Product: 'B' } ]"; IList<JToken> tokenList = JToken.Parse(json).ToList(); List<ProductModel> productList = new List<ProductModel>(); foreach (JToken token in tokenList) { productList.Add(JsonConvert.DeserializeObject<ProductModel>(token.ToString())); } return productList; } 我们应该使用哪种SQL数据类型来存储包含JSON的字符串? NVARCHAR(255)? TEXT? VARBINARY(MAX)?
127 sql  sql-server  json 

5
多个表的外键
我的数据库中有3个相关的表。 CREATE TABLE dbo.Group ( ID int NOT NULL, Name varchar(50) NOT NULL ) CREATE TABLE dbo.User ( ID int NOT NULL, Name varchar(50) NOT NULL ) CREATE TABLE dbo.Ticket ( ID int NOT NULL, Owner int NOT NULL, Subject varchar(50) NULL ) 用户属于多个组。这是通过多对多关系完成的,但在这种情况下无关紧要。票证可以由组或用户通过dbo.Ticket.Owner字段拥有。 最正确的方式是什么描述票证与用户或组之间的这种关系? 我在想我应该在票证表中添加一个标志,说明该标志的类型。

10
从表中的列中删除身份
我们有一个5GB的表(近5亿行),我们想删除其中一列的identity属性,但是当我们尝试通过SSMS执行此操作时,它就会超时。 可以通过T-SQL完成吗?
127 sql  sql-server  tsql 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.