回答
如果你真的想使用like
你可以這樣做:
where col like '__' or col_like '___' or . . .
或:
where col like '__%' and -- at least two characters
col not like '_________%' -- not 9 characters
比較典型的方法是:
where len(col) between 2 and 10
如果你想確保他們的數字:
where len(col) between 2 and 10 and
col not like '%[^0-9]%'
完美,謝謝!最後一點工作! – Christa
您可以使用正則表達式。
SELECT * FROM mytable WHERE mycol LIKE '%[0-9]{2,10}%';
應該這樣做(這是我的頭頂部,因此請仔細檢查
不幸的是,LIKE在T-SQL中沒有RegEx支持。 –
它看起來像它有一些東西:https://msdn.microsoft.com/en-us/library/ms187489(SQL.90).aspx 雖然我懷疑'{2,10}'不會去工作。 –
@Grim ...是的,我一直在指那個頁面。 {2,10}不起作用。 – Christa
你可以做一個函數來做到檢查每一個字符像下面的這個很長的路要走!
DECLARE @TempField varchar(max)= '1v3Abc567'
DECLARE @FieldLength int = LEN(@TempField)
DECLARE @CountNumeric int = 0
WHILE @FieldLength > 0
BEGIN
SELECT @CountNumeric = @CountNumeric + ISNUMERIC(SUBSTRING (@TempField,@FieldLength,1))
SET @FieldLength = @FieldLength - 1
END
SELECT @CountNumeric NumericCount
- 1. 匹配一系列Unicode字符
- 2. 獲取python字符串等價,像SQL匹配一樣工作
- 3. SQL:將一列的字符串與另一個表列的子串匹配
- 4. 匹配模式,除非匹配是一個空字符串
- 5. 一對模式匹配問題與模式匹配在Lua
- 6. 模式的一個字符串匹配起始字符和數字與
- 7. 檢查字符串匹配給定的日期,就像格式
- 8. 正則表達式匹配一個「PATH環境變量」就像字符串
- 9. Postgresql模式匹配字符串列
- 10. Python的正則表達式 - 匹配一個像MGRoad這樣的字符串到像MG_Road一樣的刺蝟
- 11. 模式匹配,匹配多個字符
- 12. 字符串,模式匹配
- 13. 模式匹配字符串
- 14. 匹配字符串模式
- 15. 字符模式匹配
- 16. 字符串模式匹配
- 17. 查找與Lua中的模式匹配的第一個字符串(XML模式匹配)
- 18. 將一系列字符串與JQuery系列中的特定圖像進行匹配
- 19. 如何匹配一個字符與一個字符的容差?
- 20. 正則表達式,匹配與一系列的信件
- 21. PHP - 正則表達式匹配一個像這樣的字符串:2012/018843/06?
- 22. 序列化爲AMF就像NetConnection一樣
- 23. SQL模式匹配
- 24. 給定一個字符串序列,檢查它是否匹配一個模式
- 25. 在scala中對一系列值進行模式匹配
- 26. SQL字母數字模式匹配
- 27. 匹配模式並打印後匹配一個字的grep
- 28. 唯一字符串匹配與駝峯
- 29. 匹配一個字符串與數組
- 30. 在sql中匹配一個字符串的正則表達式
它是一個字符串列或INT? – Dekel
'len(f)在2和10之間且isnumeric(f)= 1'時的情況? –
@ WHERE col NOT LIKE'%[^ 0-9]%'and BETWEEN 2 AND 10' –