如何在sql中将字符串拆分为变量?

2023-11-27

我有一个看起来像这样的字符串BAT | CAT | RAT | MAT我想把这个字符串分成4部分,然后将它们存储到4个不同的变量中,分别是..@a,@b,@c,@d。

在sql中如何实现呢?


用于围绕 char 进行拆分:

DECLARE @A VARCHAR (100)= 'cat | bat | sat'

SELECT items
INTO #STRINGS 
FROM dbo.split(@A,'|')

另请参阅此链接

DECLARE @test varchar(max);
set @test = 'Peter/Parker/Spiderman/Marvel';
set @test = Replace(@test, '/', '.');

SELECT ParseName(@test, 4) --returns Peter
SELECT ParseName(@test, 3) --returns Parker
SELECT ParseName(@test, 2) --returns Spiderman
SELECT ParseName(@test, 1) --returns Marvel

SQL Server 2005:将字符串拆分为数组并获取数组(x)?

分割字符串的解决方法:

http://www.sqlperformance.com/2012/07/t-sql-queries/split-strings

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

如何在sql中将字符串拆分为变量? 的相关文章

  • FireDac 添加下划线 1 以区分具有相同名称的 2 个列名

    我有一个连接 2 个表的选择 因此这些表中存在具有相似名称的列 因此现在在检索结果时 FireDac 将下划线 1 添加到第二个列名称以区分这两个表 Select from Table1 inner join Table2 on Table
  • MySQL 5:我的 GROUP BY 字段的顺序重要吗?

    Peeps 我的 MySQL 查询中有一些聚合 计算字段 我的 GROUP BY 子句是动态生成的 具体取决于用户在 Web 表单中选择的选项 很好奇 GROUP BY 子句中列出的字段顺序是否会对计算产生任何影响 例如 SUM AVERA
  • 查询获取每条记录的最小日期[重复]

    这个问题在这里已经有答案了 我想获取表中每条记录的最小日期 该表具有多个带有一个主键的日期条目 看看我的桌子 CaseNo Entry date ABC 001 2 12 13 ABC 002 2 09 13 ABC 001 1 01 13
  • MySQL Tinybit(1) 通过视图的列

    我有一个连接 2 个表的视图 其中一个表具有表示布尔值的tinyint 1 类型的列 该表在连接时并不总是有条目 因此当行丢失时视图需要采用 0 false 值 我希望视图公开 TINYINT 1 类型且 NOT NULL 类型的列 因为它
  • 当两个表非常相似时,什么时候应该将它们合并?

    我有事件和照片 然后对两者进行评论 现在 我有两个评论表 一个用于与事件相关的评论 另一个用于照片评论 架构与此类似 CREATE TABLE EventComments CommentId int EventId int Comment
  • 使用 SQL 扩展事件捕获链接服务器查询

    我尝试了许多事件类型 但无法实现链接服务器的日志记录 我可以找出所有其他数据库的事件 但对于链接服务器却没有运气 有什么建议 您可以使用OLEDB DATA READ跟踪对链接服务器的查询的事件 如果此事件的结果比您想要的更详细 您可能需要
  • SQL Server 2008 GUID 列全为 0

    我希望这是我做的一个简单的傻事 我的数据库中有一个表 设置如下 column name widget guid data type uniqueidentifier allow nulls false default value newid
  • 使用 FileTable 通过 SQL INSERT 创建子目录

    之前 我请求如何在一个目录中创建一个目录FileTable不使用文件 I O API https stackoverflow com q 10483906 175679 我现在想为刚刚创建的父目录创建一个子目录 在插入期间如何分配我的父母
  • 火鸟删除速度很慢

    我正在做这个简单的交易 DELETE FROM ominve01 WHERE CVE OBS IN SELECT CVE OBS FROM minve01 M WHERE M FECHA DOCU lt 31 12 2010 OR FECH
  • 获取从开始日期到结束日期的活跃周数

    我的订阅数据如下所示 数据显示用户何时购买订阅 它有user id subscription id start date and end date 我已经得出wk start and wk end从中 user subscription i
  • 从头开始构建 OLAP 解决方案时应该注意什么?

    我在一家运行基于 MS SQL 数据库服务器的软件产品的公司工作 多年来我已经用 PHP 开发了 20 30 个相当高级的报告 直接从数据库获取数据 这非常成功 人们对此感到高兴 但它有一些缺点 对于新的变化 它可能是相当开发密集型的 用户
  • 如何获取Postgres当前的可用磁盘空间?

    在开始在数据库中进行某些工作之前 我需要确保至少有 1Gb 的可用磁盘空间 我正在寻找这样的东西 select pg get free disk space 是否可以 我在文档中没有找到任何相关内容 PG 9 3 操作系统 Linux Wi
  • 迁移问题:MS SQL > MySQL:插入缓冲区内存

    我在使用 MySQL Workbench 上的内置迁移工具时遇到问题 我正在将一个非常大的数据库从 MS SQL 2014 迁移到 MySQL MS SQL 服务器本地部署在我的 Windows 8 1 桌面上 MySQL 服务器在我的网络
  • SQL Server - SQL 替换整个数据库中所有表中的所有列

    这是一个很遥远的事情 我猜这个问题没有简单的答案 但是 我继承了一个数据库 其中填充了一些可怕的数据 许多包含描述的行都有回车符 这意味着当我们 BCP 输出数据时 它会带有回车符 我的问题 有没有办法在 MS SQL Server 中对整
  • SQLite 使用循环重新编号 ID

    您好 我有一个包含许多插入行的表 我需要按 id 对所有行重新编号并排序 我找到了这段代码 但它对我不起作用 SET i 100 UPDATE main Categories SET ID i i 1 WHERE Name White AL
  • INNER/RIGHT/LEFT JOIN 怎么会比 FULL JOIN 慢 14 倍?

    我有一个查询 使用 FULL JOIN 需要 2 5 秒 使用 INNER RIGHT 或 LEFT JOIN 需要 40 秒 这是查询 子查询 完成两次 本身只需要 1 3 秒 SELECT T1 time T1 Total T1 rn
  • 在 SQL Management Studio 2012 中调试

    我正在使用 Management Studio 2012 但无法调试任何 SQL 代码 在我点击 调试 按钮后 左侧没有看到任何绿色箭头 并且我的 SQL 对象都没有加载到内存中 当我将光标移到我设置的断点上时 我收到此消息 The bre
  • Razor C# - 从数据库获取数据

    我正在使用 WebMatrix 我创建了一个数据库并放置了一个包含几行数据的表 我可以连接到它并获取数据WebGrid 但它只提供了一种使用表格输出数据的方法 这是我的 shows cshtml 代码 var db Database Ope
  • 如何在 Postgresql 中将 GIST 或 GIN 索引与 hstore 列一起使用?

    我正在使用 postgresql 9 3 的 hstore 我正在尝试对 hstore 列使用索引就像文档所述 http www postgresql org docs 9 3 static hstore html 我的问题是索引似乎没有被
  • Postgres 按查询分组

    我正在尝试在 postgres 的查询中使用 group by 我无法让它按照我想要的方式工作 以便根据需要对结果进行分组 这是另一个堆栈问题的扩展我刚刚回答过的递归查询 https stackoverflow com questions

随机推荐