Tag: tsql

NOT IN子句和NULL值

这个问题出现时,我得到不同的logging计数为我认为是相同的查询一个使用not in where约束和另一个left join 。 not in约束中的表有一个空值(坏数据),导致查询返回0logging的计数。 我有点理解为什么,但我可以用一些帮助完全理解这个概念。 为了简单说明,为什么查询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返回一个结果。

SQL Server中的左连接与左连接外连接

LEFT JOIN和LEFT OUTER JOIN什么区别?

在SQL Server中删除部分date时间的最佳方法

从SQL Server中的date时间字段中删除时间部分时哪种方法提供最佳性能? a) select DATEADD(dd, DATEDIFF(dd, 0, getdate()), 0) 要么 b) select cast(convert(char(11), getdate(), 113) as datetime) 第二种方法确实发送了几个字节,但这可能不如转换速度那么重要。 两者似乎都非常快,但在处理数百或数千行时,速度可能会有所不同。 另外,是否有更好的方法来摆脱SQL中的date时间部分?

我怎样才能做一个SQL语句与JOIN UPDATE语句?

我需要使用“父”表中的数据更新SQL Server 2005中的这个表,如下所示: 拍卖 id (int) udid (int) assid (int) UD id (int) assid (int) sale.assid包含更新ud.assid的正确值。 什么查询会做到这一点? 我正在考虑join,但我不确定是否有可能。

简单的方法来转置Sql中的列和行?

我如何简单地在SQL中切换行? 有没有简单的命令转置? 即打开这个结果: Paul | John | Tim | Eric Red 1 5 1 3 Green 8 4 3 5 Blue 2 2 9 1 进入这个: Red | Green | Blue Paul 1 8 2 John 5 4 2 Tim 1 3 9 Eric 3 5 1 对于这种情况, PIVOT似乎太复杂了。

获取插入行身份的最佳方法?

什么是插入行的身份的最佳方式? 我知道@@IDENTITY和IDENT_CURRENT和SCOPE_IDENTITY但不明白每个附带的优点和缺点。 有人可以解释一下这些差异,什么时候我应该使用它们?

如何仅从SQL Server DateTime数据types返回date

SELECT GETDATE() 2008-09-22 15:24:13.790 2008-09-22 00:00:00.000我希望没有时间的date部分 我怎么能得到这个?

SQL Server:PIVOTingstring数据的示例

试图find一些简单的SQL Server PIVOT示例。 我发现的大部分例子都涉及计算或总结数字。 我只是想旋转一些string数据。 例如,我有一个查询返回以下内容。 Action1 VIEW Action1 EDIT Action2 VIEW Action3 VIEW Action3 EDIT 我想用PIVOT(如果可能的话)做出如下结果: Action1 VIEW EDIT Action2 VIEW NULL Action3 VIEW EDIT 这甚至可能与PIVOTfunction?

在T-SQL中相当于分割函数?

我正在寻找拆分'1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 …'(逗号分隔)到表或表variables。 有没有人有一个函数返回每一个连续?

T-SQL拆分string

我有一个SQL Server 2008 R2列包含一个string,我需要用逗号分隔。 我在StackOverflow上看到了很多答案,但是它们都不适用于R2。 我已经确定我有任何分割函数示例的select权限。 任何帮助不胜感激。