比较sql server中两个字符串中的数字

2024-04-24

我有两个字符串作为 @CountryLocationIDs 和 @LocationIDs ,其值:

@CountryLocationIDs = 400,600,150,850,160,250
@LocationIDs1       = 600,150,900

然后我需要另一个变量的输出:

@LocationIDs = 400,600,150,850,160,250,900

任何人请帮忙...提前致谢...


我创建了表值函数,它接受两个参数,第一个是带有 ID 的字符串,第二个是字符串中的分隔符。

CREATE FUNCTION [dbo].[Split](@String nvarchar(4000), @Delimiter char(1))       
returns @temptable TABLE (items nvarchar(4000))       
as       
begin       
    declare @idx int       
    declare @slice nvarchar(4000)       

    select @idx = 1       
        if len(@String)<1 or @String is null  return       

    while @idx!= 0       
    begin       
        set @idx = charindex(@Delimiter,@String)       
        if @idx!=0       
            set @slice = left(@String,@idx - 1)       
        else       
            set @slice = @String       

        if(len(@slice)>0)  
            insert into @temptable(Items) values(@slice)       

        set @String = right(@String,len(@String) - @idx)       
        if len(@String) = 0 break       
    end   
return       
end  

创建函数后,只需使用UNION按此方式设置运算符:

EDITED

WITH ListCTE AS 
(
select items from dbo.split('400,600,150,850,160,250', ',')
union
select items from dbo.split('600,150,900', ',')
)
SELECT TOP 1

   MemberList = substring((SELECT ( ', ' + items )
                           FROM ListCTE t2
                           ORDER BY 
                              items
                           FOR XML PATH( '' )
                          ), 3, 1000 )FROM ListCTE t1

With UNION您将自动从两个字符串中获取不同的值,因此您不需要使用DISTINCT clause

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

比较sql server中两个字符串中的数字 的相关文章

  • MySQL 中复制一条记录

    我有一个表 我想复制表中的特定行 我知道这不是最好的方法 但我们正在寻找快速解决方案 这比我最初想象的要难 我需要做的就是将整个记录复制到 MySql 中自动增量表中的新记录 而不需要指定每个字段 这是因为该表将来可能会发生变化 并且可能会
  • 通过 pyodbc 连接到 Azure SQL 数据库

    我使用 pyodbc 连接到本地 SQL 数据库 该数据库工作正常 SQLSERVERLOCAL Driver SQL Server Native Client 11 0 Server localdb v11 0 integrated se
  • 针对树结构优化 SQL

    如何从数据库中获取具有最佳性能的树形结构数据 例如 假设数据库中有一个文件夹层次结构 文件夹数据库行所在的位置ID Name and ParentID列 您会使用特殊的算法一次获取所有数据 最大限度地减少数据库调用量并在代码中处理它吗 或者
  • ORA-01438: 值大于此列允许的指定精度

    有时我们会从合作伙伴的数据库中收到以下错误 i ORA 01438 value larger than specified precision allows for this column i 完整响应如下所示
  • 删除sql server中的大量数据

    假设我有一个有 10000000 条记录的表 这两种解决方案有什么区别 删除数据 例如 DELETE FROM MyTable 使用应用程序逐行删除所有数据 DELETE FROM MyTable WHERE ID SelectedID 第
  • 使用C#在SQL Server上执行sql文件

    我有很多程序 视图 函数等文件 我想在 SQL Server 2005 2008 上的适当数据库中执行这些文件 创建组件 还有一点是我想使用 C 来执行它们 另一点需要提及的是 我希望应用程序也可以在远程 SQL Server 上执行此文件
  • ORA-01741: 非法的零长度标识符

    您好 我在 shell 脚本中使用删除查询 并且遇到了这个问题 delete from WHITELIST CLI where filecode like Line Index condense Error ERROR ORA 01741
  • 如何在 BigQuery 中取消透视?

    不确定要调用什么函数 但转置是我能想到的最接近的函数 I have a table in BigQuery that is configured like this 但我想查询一个配置如下的表 创建此表的 SQL 代码是什么样的 Thank
  • SQL 连接中的多个条件

    如何指定多个条件SQL加入 我知道A key B key除此之外是强制性的 以下对于指定多个条件是否正确SQL ON A key B key and or cond1 and or cond2 etc OR ON A key B key w
  • 在 SQL 表中的文本字符串中查找换行符?

    我试图在 SQL 表的列中查找换行符和回车符 但我不确定语法 I tried SELECT foo FROM test WHERE foo LIKE CHAR 10 尽管我知道该表应该返回结果 但我没有得到任何结果 我究竟做错了什么 SEL
  • 使用 C# 创建 SQL Server 备份文件 (.bak) 到任何位置

    我正在尝试用 C 编写简单的应用程序 它允许我备份 压缩并通过 ftp 发送我的 SQL Server 数据库 我遇到的一个问题是 如果我尝试在 C Program Files Microsoft SQL Server MSSQL 3 MS
  • 如何保证auto_increment数字没有间隙?

    我有一个关于自动递增的问题 这是我的表 我首先拥有它 它可以顺利地递增 id id name 1 name1 2 name2 3 name3 4 name4 5 name5 6 name6 但是当我删除一条记录并插入一条新记录时 id从7开
  • SQL 数据范围最小值最大值类别

    我想确定 2 个类别的范围 A 类和 B 类 A 从 1 到 15 开始 B 从 16 到 31 开始 然后 A 再次从 32 到 40 开始 现在如果运行此查询 select min range max range from table
  • 为什么根据检索顺序从 ADO Recordset 中获取空值而不是正确值? (DB表有NTEXT值)

    我有一个数据库表有两个datetime我需要使用 VBScript 从 ASP 页面读取可为空的列 这是我写的代码 Set cmd Server CreateObject ADODB Command With cmd ActiveConne
  • 加入多对多关系

    我有三个表 applications permissions 和 applications permissions applications applications permissions permissions id lt applic
  • MySQL SUM 具有相同的 ID

    抱歉 这个真正简单的问题 我刚刚学习 PHP 和 MySQL 我已经在谷歌上搜索了一个多星期 但没有找到任何答案 我创建了一个简单的财务脚本 表格如下 table a aid value 1 100 2 50 3 150 table b b
  • 在sql server中透视固定的多列表

    我有一个需要为报告服务进行旋转的表格 DateCreated Rands Units Average Price Success Unique Users 2013 08 26 0 0 0 0 0 2013 08 27 0 0 0 0 0
  • PL/pgSQL 中的 EXPLAIN ANALYZE 给出错误:“查询没有结果数据的目的地”

    我试图理解 PL pgSQL 函数中 select 语句的查询计划 但我不断收到错误 我的问题 如何获取查询计划 以下是重现该问题的简单案例 相关表名为 test table CREATE TABLE test table name cha
  • 使用 python 从 hive 读取数据时的性能问题

    我在 hive 中有一个表 其中包含 351 837 110 MB 大小 记录 我正在使用 python 读取该表并写入 sql server 在此过程中 从 hive 读取数据到 pandas dataframe 需要很长时间 当我加载整
  • SQL 错误:字符串或二进制数据将被截断

    我正在一个名为 Telligent 的社区平台上进行集成 我正在使用名为 BlogML 的第 3 方插件将博客文章从 XML 文件 BlogML 格式 导入到我的本地 Telligent 站点中 Telligent 平台在其 SDK 中附带

随机推荐

  • Angular2 ngNoForm 还可以进行角度形式验证

    我有一个遗留后端服务器 它将表单数据作为请求参数进行处理 我们将 angular2 放在前端 我想提交 angular2 表单 以便所有字段都作为请求参数 这样就不必更改旧后端 为此 我有
  • 捆绑安装不起作用

    我正在 Windows 上开发 Ruby on Rails 我们的本地网络出现问题 无法访问https www rubygems org https www rubygems org 好像被屏蔽了什么的 但我可以通过访问它http www
  • Ruby on Rails 3:Devise::LdapAdapter.get_ldap_param 未定义方法错误

    我在跑步 红宝石 1 9 3p0 轨道 3 1 1 设计1 4 9 Devise ldap authenticatable 0 4 10 我正在使用 Devise 通过 LDAP 服务器验证我的 Rails 应用程序 我使用用户名而不是电子
  • Is Type 和 Is Type(object, object) 抛出 TypeException

    我试图断言方法调用返回的对象属于以下类型List
  • EC2 t2.medium 可爆发信用“储蓄”计算

    我正在使用 T2 medium 实例 一天的三分之一的时间我都在做密集的统计计算 并计算出剩下的 2 3 的时间我将以每小时 24 小时的速度 赚取 学分 但这并没有发生 这是我这两天的使用情况 这是我的信用账户 直到昨天下午 6 点我已经
  • 在 Ruby 中模拟 int64 溢出

    我是一名资深程序员 但对 Ruby 还很陌生 我正在尝试移植一种名为 CheckRevision 的算法 用于在登录 Battle net 的在线游戏服务之前检查游戏文件的完整性 该算法使用给定的公式对文件进行 哈希 没有无聊的细节 而是不
  • 从 apache Spark 读取/写入 dynamo 数据库 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想知道是否有任何 Java 库支持从 apache Spark Mesos 读取 写入 dynamo
  • 获取同一 FK 日期差异的前一条记录

    我需要在一小时内插入同一客户的前 1 条记录 如果记录在一小时后插入 则不需要该记录 请参见下表 这只是数千条记录的样本 我正在使用 SQL Server 2005 替代文本 http img651 imageshack us img651
  • 如何在node.js中关闭数据库连接?

    当我关闭数据库连接时node js我收到这个错误 Cannot enqueue Query after invoking quit 这是我的code socket on adminConnect function email connect
  • Java 大型数据库插入

    我有一个数据库 需要在其中插入批量数据 一次大约 500k 条记录 我正在使用 derby 进行测试 发现这么多记录的插入时间约为 10 15 分钟 我正在用 Java 进行批量插入 这次看起来是否很慢 在普通笔记本电脑上工作 有没有办法加
  • 在 SQL Server 的 select 语句中使用带有 TOP 的变量,而不使其动态化 [重复]

    这个问题在这里已经有答案了 declare top int set top 5 select top top from tablename 是否可以 或者对这样的逻辑有什么想法 我不想使用动态查询 是的 在 SQL Server 2005
  • 避免 Firebase 可调用函数的 CORS 预检

    我有一个Firebase 可调用云函数 https firebase google com docs functions callable我在浏览器中的 javascript 应用程序中调用它 由于请求主机是 cloudfunctions
  • Spring自动装配参数化集合

    大家好 感谢您提前的帮助 我遇到一个问题 Spring 无法自动装配 ArrayBlockingQueue 类型的参数化成员变量 这是java代码 Controller public class SomeController Autowir
  • WPF 使用凭据启动浏览器

    我正在使用 WPF 和 C 我希望能够启动一个浏览器窗口 最有可能是 IE 并提供已知的凭据 以便基于 Windows 的应用程序可以处理从自身到外部浏览器的转换 而无需用户再次输入他 她的凭据 我确实知道如何启动浏览器 System Di
  • 仅在模块中加载 Yii Bootstrap

    我尝试仅在管理模块中加载 Yii Bootstrap 扩展 但它不起作用 我假设我需要预加载它或以某种方式启动它 谢谢 class AdminModule extends CWebModule public function init im
  • UIWebView 不断尝试加载但没有结果

    我正在尝试使用 UIWebView 连接到 wikiTravel 页面 这是我的代码 NSURL url NSURL URLWithString http wikitravel org en Beijing NSURLRequest req
  • 从命令行运行 Jupyter Notebook (.ipynb),就像它是 .py 文件一样

    我正在本地计算机上编写 Jupyter 笔记本 该笔记本最终将在远程服务器 运行 Ubuntu 上运行 每次我需要进行更改时 我都必须将笔记本导出为 py文件 然后从服务器的命令行调用它 我希望能够即时运行它 调用一个命令来获取当前的 ip
  • Gmail 的操作邮件程序配置

    我正在尝试将使用 Gmail SMTP 的电子邮件传送添加到我的应用程序中 我之前已经完成了 不太安全的应用程序 方式 但我不想在这个项目中使用此选项 我试图查看谷歌的文档或一些宝石以使其工作 但无济于事 每个人都只是发送一些代码 如下所示
  • 使背景图像与屏幕大小相同

    我希望背景图像填满屏幕 并且不担心失去宽高比 已经证实了一切 不要认为我错过了任何明显的事情 HTML phone margin auto height 737px width 654px background image url imgs
  • 比较sql server中两个字符串中的数字

    我有两个字符串作为 CountryLocationIDs 和 LocationIDs 其值 CountryLocationIDs 400 600 150 850 160 250 LocationIDs1 600 150 900 然后我需要另