SQL startswith (en utilisant `LIKE`) sur une expression
Ce qui est une façon appropriée de faire startswith(expression)
en SQL?
Je peux le faire avec LIKE ((expression) || '%')
mais il n'a pas l'air très gentil avec moi.
Complète de la requête est de la forme:
SELECT …, (SELECT COUNT(*)
FROM post AS child
WHERE child.path LIKE (post.path || '%')
AND child.depth >= post.depth)
FROM post WHERE …
Je suppose qu'il est préférable d'utiliser LIKE
en raison de la base de données d'indexation de cette affaire.
source d'informationauteur HoverHell
Vous devez vous connecter pour publier un commentaire.
Suffit d'utiliser
LIKE 'input%'
. I. E:(Je suppose que c'est pour SQL Server, bien que cette syntaxe fonctionne probablement ailleurs)
Dans le standard SQL, vous pouvez aussi dire:
Je ne sais pas si votre SGBDR prend en charge. PostgreSQL n'.
Vous pouvez utiliser
where DATE LIKE '[(SELECT STR(YEAR(GETDATE())-1))]%'
WHERE child.path LIKE '[(SELECT STR(YEAR(GETDATE())-1))]%' (post.path || '%')