在 LIKE 中重复模式 X 次

Sal*_*us2 4 sql-server pattern-matching like regex

我查看了 Microsoft 的模式文档(可以在此处找到),据我所知,它并没有说明模式重复有限次数的方法。它要么是通配符(无限期地继续),要么是在一个位置查找特定字符,每个位置都是独立输入的。有没有办法输入“模式 X 重复 Y 次”?

例如,如果我想查找正好有 5 位数字的帐号,我现在拥有的是:

SELECT * FROM table WHERE account LIKE '[0-9][0-9][0-9][0-9][0-9]'
Run Code Online (Sandbox Code Playgroud)

有没有速记的方法来做到这一点?

ype*_*eᵀᴹ 10

是的。功能REPLICATE()

SELECT * FROM table WHERE account LIKE REPLICATE('[0-9]', 5) ;
Run Code Online (Sandbox Code Playgroud)