如何重复LIKE模式' n'倍

时间:2016-12-17 11:38:35

标签: sql-server

我想在查询中重复使用LIKE模式7次。

SELECT count(displayName),
AS nbDisplayNameDefaut
FROM users
WHERE displayName LIKE 'user[0123456789]'

此查询返回所有显示名称,如userX,但我希望有七个时间号码,以显示名称,如userXXXXXXX(X是数字)

如果我这样做,我认为这个查询没有优化:

LIKE 'user[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]'

我在SQL-Server doc

中找不到该选项

1 个答案:

答案 0 :(得分:3)

SQL Server LIKE支持范围模式,因此您可以将[0-9]代替[01234567899]用于单个十进制数字。可以复制此模式以获得更简洁表达式所需的位数:

LIKE 'user' + REPLICATE('[0-9]', 7)