小编cod*_*ori的帖子

禁止 SSMS 提示保存更改

保存对以下项目的更改

是否可以配置 SQL Server Management Studio (SSMS)。以便在关闭未保存的查询窗口时不出现上面显示的对话框?

sql-server-2008 sql-server ssms

23
推荐指数
1
解决办法
5225
查看次数

无重复组合的 SQL 查询

我需要一个可以在(或作为)函数中使用并检索 n 值的所有组合的查询。我需要长度 k 的所有组合,其中 k = 1..n。

扩展样本输入和结果,因此输入有 3 个值而不是 2 - 但是,输入值的数量可能从 1 到 n 不等。

示例:输入:在多行中的一列中包含值的表

Value  (nvarchar(500))
------
Ann
John
Mark
Run Code Online (Sandbox Code Playgroud)

输出#1:在一列中连接值的表

    Ann
    John
    Mark
    Ann,John
    John,Mark
    Ann,Mark
    Ann,John,Mark
Run Code Online (Sandbox Code Playgroud)

performance sql-server query-performance

22
推荐指数
1
解决办法
3万
查看次数

如何在另一个字符串中找到一个字符串的所有位置

如何patindex在表格或变量中找到所有位置?

declare @name nvarchar(max)
set @name ='ali reza dar yek shabe barani ba yek  '
  + 'dokhtare khoshkel be disco raft va ali baraye'
  + ' 1 saat anja bud va sepas... ali...'
select patindex('%ali%',@name) as pos 
Run Code Online (Sandbox Code Playgroud)

这会返回1但我想要所有结果,例如:

pos
===
  1
 74
113
Run Code Online (Sandbox Code Playgroud)

sql-server-2005 sql-server string-searching

11
推荐指数
2
解决办法
5万
查看次数

在部分字符串匹配上连接表

输入:我有一个包含(任意数量)用户提供的字符串的表:

?????????
? Value ?
?????????
? To    ?
? An    ?
?????????
Run Code Online (Sandbox Code Playgroud)

以及用户详细信息表:

?????????????????????
? UserID ? UserName ?
?????????????????????
?     12 ? Tom      ?
?    132 ? Ann      ?
?     32 ? Dina     ?
?      2 ? Mark     ?
?????????????????????
Run Code Online (Sandbox Code Playgroud)

我需要一个查询来返回用户表中的所有记录,其中UserNameValue输入表中任何记录的部分字符串匹配。这种情况下的预期输出是:

?????????????????????
? UserID ? UserName ?
?????????????????????
?     12 ? Tom      ?
?    132 ? Ann      ?
?????????????????????
Run Code Online (Sandbox Code Playgroud)

join sql-server t-sql

0
推荐指数
2
解决办法
2万
查看次数

在 xml 上选择大小写的默认值

select case 'NULL' when 'NULL' then 'f' end as out
Run Code Online (Sandbox Code Playgroud)

输出:f

select case (select  (SELECT LEFT(l.list,LEN(l.list)-1) 
    FROM
    (SELECT  o.Reciting_Path + '|' + o.Declaimer +',' AS [text()]
    FROM    Poetry_Reciting  AS o
    where   o.Poetry_Id=6764
    FOR XML PATH(''))l(list)) )  when  'NULL' then 'N' end as dd
Run Code Online (Sandbox Code Playgroud)

应该只返回NULL并且 NULL 是正确的,但 case 语句不起作用。

我想要输出中的“N”

xml sql-server transaction xquery

-1
推荐指数
1
解决办法
1749
查看次数