什么是startswith(expression)
在SQL中适当的方法?
我可以用它LIKE ((expression) || '%')
,但它对我来说看起来不太好.
完整查询的形式如下:
SELECT …, (SELECT COUNT(*)
FROM post AS child
WHERE child.path LIKE (post.path || '%')
AND child.depth >= post.depth)
FROM post WHERE …
Run Code Online (Sandbox Code Playgroud)
我认为最好使用LIKE
因为这种情况下的DB索引.
Sco*_*son 27
只是用LIKE 'input%'
.IE:
WHERE child.path LIKE post.path + '%'
Run Code Online (Sandbox Code Playgroud)
(我假设这是针对SQL Server的,尽管这种语法可能适用于其他地方)
在标准 SQL 中,您还可以说:
where position(post.path in child.path) = 1
Run Code Online (Sandbox Code Playgroud)
我不知道你的 RDBMS 是否支持。PostgreSQL 确实如此。
归档时间: |
|
查看次数: |
56557 次 |
最近记录: |