我有一个字符串:
"16680,16678,16677,16676,16675,16672"
这是我在调用存储过程传递的参数时得到的。我想把这些记录插在哪里
其中 (16680,16678,16677,16676,16675,16672)。
如何在 Sybase ASE 存储过程中执行此操作?
您可以使用str_replace()
函数将双引号替换为NULL,例如:
declare @strings varchar(15)
select @strings = '"1,2,3,4,5"'
select @strings, str_replace(@strings,'"',NULL)
go
--------------- ---------------
"1,2,3,4,5" 1,2,3,4,5
不过,将新字符串输入查询需要更多的工作。
尝试直接输入查询会生成错误,例如:
declare @strings varchar(15)
select @strings = '"1,2,3,4,5"'
select id from sysobjects where id in ( str_replace(@strings,'"',NULL) )
go
Msg 257, Level 16, State 1:
Server 'ASE400', Line 7:
Implicit conversion from datatype 'VARCHAR' to 'INT' is not allowed. Use the CONVERT function to run this query.
为了解决这个问题,我们可以动态构建查询,然后通过执行()
调用运行它,例如:
declare @strings varchar(15),
@query varchar(100)
select @strings = '"1,2,3,4,5"'
select @query = 'select id from sysobjects where id in (' || str_replace(@strings,'"',NULL) || ')'
print @query
execute (@query)
go
select id from sysobjects where id in (1,2,3,4,5)
id
-----------
1
2
3
4
5
另一个取消< code>@query变量的解决方案是:
declare @strings varchar(15)
select @strings = '"1,2,3,4,5"'
select @strings = str_replace(@strings,'"',NULL)
execute( 'select id from sysobjects where id in (' || @strings || ')' )
go
id
-----------
1
2
3
4
5
注意:所有代码都在< code>ASE 16.0 SP04 GA实例中运行。
我对SqlAlchemy和Firebird DB是新手。 我可以直接使用DBeaver创建一个表: 但如果我尝试使用pyndas sqlalchemy执行同样的操作,我会得到一个错误: 问题是由引号
我想从字符串中删除双引号中的逗号/逗号。 即以下字符串 应输出: 我试过这个正则表达式: 但是如果双引号中有双引号,它就失败了。 另一个例子: 输出:
本文向大家介绍如何使用Java在MongoDB中删除索引?,包括了如何使用Java在MongoDB中删除索引?的使用技巧和注意事项,需要的朋友参考一下 在MongoDB中删除索引,您需要使用dropIndex()方法。 语法 在Java中,可以使用dropIndex()方法删除索引,您需要将索引的类型(升序或降序)和在其上创建字段的名称传递给该方法。 示例 输出结果
输出为 预期输出
我想从elasticsearch索引中删除一些数据,而不是完整的索引,我的问题是如何找到所有可用碎片的文档id。对此的查询是什么?? 我使用了以下查询来删除特定文档,但它抛出错误,所以我认为我的文档ID是错误的。请让我知道如何获取可用分片的正确文档ID。 我的数据流是postgresql到logstash到elasticsearch到kibana。但问题是索引大小正在增加很多,它进入GB的内存,而
如何删除每个索引,我有一个参数和删除按钮,我试图将我的参数放在我的删除按钮中,但它不起作用如何解决这个问题? 超文本标记语言