Questions tagged «tsql»

T-SQL(事务结构查询语言)是Sybase ASE和Microsoft SQL Server支持的SQL功能的扩展。请勿将此标签用于MySQL,PostgreSql,Oracle(Pl / SQL)相关查询。请注意,使用LINQ编写的SQL代码也不属于该标签的一部分。该标记是专门为使用Microsoft SQL Server进行高级SQL编程而创建的。

11
不等于<>!= NULL运算符
有人可以解释一下SQL中的以下行为吗? SELECT * FROM MyTable WHERE MyColumn != NULL (0 Results) SELECT * FROM MyTable WHERE MyColumn &lt;&gt; NULL (0 Results) SELECT * FROM MyTable WHERE MyColumn IS NOT NULL (568 Results)
271 sql  sql-server  tsql  null 




15
使用T-SQL从日期月份和年份中创建日期
我正在尝试将包含2007年12月1日等各个部分的日期转换为SQL Server 2005中的日期时间。我尝试了以下方法: CAST(DATEPART(year, DATE)+'-'+ DATEPART(month, DATE) +'-'+ DATEPART(day, DATE) AS DATETIME) 但这会导致日期错误。将三个日期值转换为正确的日期时间格式的正确方法是什么?

23
如何从TSQL日期时间字段获取YYYY-MM-DD格式的日期?
如何从SQL Server检索YYYY-MM-DD格式的日期?我需要使用它才能与SQL Server 2000及更高版本一起使用。有没有一种简单的方法可以在SQL Server中执行此操作,或者在检索结果集之后以编程方式对其进行转换会更容易吗? 我已经在Microsoft Technet上阅读了CAST和CONVERT,但是没有列出我想要的格式,并且更改日期格式不是一种选择。
259 sql-server  tsql 

7
在一列上选择DISTINCT
使用SQL Server,我有... ID SKU PRODUCT ======================= 1 FOO-23 Orange 2 BAR-23 Orange 3 FOO-24 Apple 4 FOO-25 Orange 我想要 1 FOO-23 Orange 3 FOO-24 Apple 这个查询没有让我知道。如何仅在一列上选择DISTINCT? SELECT [ID],[SKU],[PRODUCT] FROM [TestData] WHERE ([PRODUCT] = (SELECT DISTINCT [PRODUCT] FROM [TestData] WHERE ([SKU] LIKE 'FOO-%')) ORDER BY [ID]
258 sql  sql-server  tsql  distinct 

7
SQL Server SELECT INTO @变量?
我的Sql(2008)Stored Procs之一具有以下代码,该代码执行得很好: CREATE PROCEDURE [dbo].[Item_AddItem] @CustomerId uniqueidentifier, @Description nvarchar(100), @Type int, @Username nvarchar(100), AS BEGIN DECLARE @TopRelatedItemId uniqueidentifier; SET @TopRelatedItemId = ( SELECT top(1) RelatedItemId FROM RelatedItems WHERE CustomerId = @CustomerId ) DECLARE @TempItem TABLE ( ItemId uniqueidentifier, CustomerId uniqueidentifier, Description nvarchar(100), Type int, Username nvarchar(100), TimeStamp datetime ); INSERT …

19
需要列出SQL Server数据库中具有表名和表架构的所有触发器
我需要列出SQL Server数据库中所有具有表名和表架构的触发器。 我几乎可以做到这一点: SELECT trigger_name = name, trigger_owner = USER_NAME(uid),table_schema = , table_name = OBJECT_NAME(parent_obj), isupdate = OBJECTPROPERTY( id, 'ExecIsUpdateTrigger'), isdelete = OBJECTPROPERTY( id, 'ExecIsDeleteTrigger'), isinsert = OBJECTPROPERTY( id, 'ExecIsInsertTrigger'), isafter = OBJECTPROPERTY( id, 'ExecIsAfterTrigger'), isinsteadof = OBJECTPROPERTY( id, 'ExecIsInsteadOfTrigger'), [disabled] = OBJECTPROPERTY(id, 'ExecIsTriggerDisabled') FROM sysobjects INNER JOIN sysusers ON …


12
NOT IN子句中的NULL值
当我获得不同的记录计数时,出现了这个问题,我认为这是相同的查询,一个使用not in where约束,另一个使用a left join。not in约束中的表具有一个空值(错误数据),该空值导致该查询返回计数为0的记录。我有点理解为什么,但是我可以使用一些帮助来完全理解这个概念。 简单地说,为什么查询A返回结果而B不返回结果? A: select 'true' where 3 in (1, 2, 3, null) B: select 'true' where 3 not in (1, 2, null) 这是在SQL Server 2005上。我还发现调用set ansi_nulls off导致B返回结果。
244 sql  sql-server  tsql  null  notin 

11
如何在SQL Server中创建外键?
我从未为SQL Server编写过“手工编码”的对象创建代码,外键解密似乎在SQL Server和Postgres之间是不同的。到目前为止,这是我的SQL: drop table exams; drop table question_bank; drop table anwser_bank; create table exams ( exam_id uniqueidentifier primary key, exam_name varchar(50), ); create table question_bank ( question_id uniqueidentifier primary key, question_exam_id uniqueidentifier not null, question_text varchar(1024) not null, question_point_value decimal, constraint question_exam_id foreign key references exams(exam_id) ); create table …
243 sql  sql-server  tsql 



12
杀死与数据库的所有连接的脚本(超过RESTRICTED_USER ROLLBACK)
我有一个开发数据库,​​该数据库经常从Visual Studio数据库项目中重新部署(通过TFS自动生成)。 有时,当我运行构建时,会出现以下错误: ALTER DATABASE failed because a lock could not be placed on database 'MyDB'. Try again later. ALTER DATABASE statement failed. Cannot drop database "MyDB" because it is currently in use. 我尝试了这个: ALTER DATABASE MyDB SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE 但我仍然无法删除数据库。(我的猜测是大多数开发人员都dbo可以访问。) 我可以手动运行SP_WHO并开始终止连接,但是我需要一种自动方式来自动构建。(尽管这次我的连接是我要删除的数据库上的唯一连接。) 是否有一个脚本可以删除我的数据库,而不管连接了谁?

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.