sql - 如何在 SQL 中搜索级别订单值?

标签 sql sql-server

我在 SQL Server 中有一个表,其中包含以下列:

Id  Name     ParentId  LevelOrder
8   vehicle  0         0/8/
9   car      8         0/8/9/
10  bike     8         0/8/10/
11  House    0         0/11/ 
...

这会创建一棵树。

假设我有 LevelOrder 0/8/,这应该只返回汽车和自行车行,但如何在 SQL Server 中处理这个问题?

我已经尝试过:

Select * FROM MyTable WHERE LevelOrder >= '0/8/' 

但这不起作用。

最佳答案

下划线字符将保证“0/8/”之后至少有一个字符,因此您不会在“车辆”行上获得匹配项。

SELECT *
    FROM MyTable
    WHERE LevelOrder LIKE '0/8/_%'

关于sql - 如何在 SQL 中搜索级别订单值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7001259/

相关文章:

sql - 在 SQL Server 中,表添加一列。导致 View 错误

sql - 如何在 Django 中创建忽略 NULL 的唯一共同约束?

php - mysql php - 数据没有完全进入数据库

mysql - 使用 where 子句和连接聚合 sql

sql - "OBJECT_NAME"函数不再返回对象的名称

sql - 递归 SQL (CTE) 性能低下

php - MySQL 到 MSSQL PHP 查询转换和速度故障排除

sql-server - 如何选择 * 并按字母顺序获取所有字段

sql - 将 'mm:ss' 转换为 SQL Server 中的时间

SQL Round 强制转换为 float