如何根据点获取字符串的子项

本文关键字:字符串 获取 何根 | 更新日期: 2023-09-27 18:10:29

我有如下顺序的代码编号:

1
1.1
1.2
1.3
.
.
.
1.1.1
1.1.2
.
.
.
2

所以…

我想要一个基于一些输入解析子对象的方法。例如,如果输入是1,则它将检索它的所有子项,如果输入为1.1,则它会检索它的全部子项,等等。

我怎么能做那样的事?

注意:

  • 这些数据存储在Informix数据库的一个表中
  • 代码编号是字符串

如何根据点获取字符串的子项

代码

var list = new List<string>();
var children = list.Where(s => s.StartsWith(inputString));

数据库

DECLARE @p1 varchar(100)
SET @p1 = '1.1%'
SELECT * FROM tbl WHERE tbl.col LIKE @p1
SELECT ...
FROM yourtable
WHERE codestring LIKE '1.1%';

应该做到这一点。

只是为了与众不同-使用SUBSTR等而不是LIKE:

SELECT *
  FROM AnonymousTable
 WHERE SUBSTR(CodeNumbers, 1, LENGTH(<xxx>)) = <xxx>;

其中<xxx>表示法指示将参数放置在何处。根据处理SQL的具体方式,有各种不同的表示法。一个缺点是它需要两个对相同参数值的引用。

一个简单的sql查询不能解决它吗??

类似的东西

SELECT * from the_table where column matches "input*"?