這個問題在這里已經有了答案: 為什么查詢計劃的更改突然似乎中斷了查詢 (1 個回答) 8 小時前關閉。
我有一個包含以下列的表格:
服務器 |
---|
SLQ-ABCD-001 |
SLQ-ABCA-002 |
SLP-DBMSA-003 |
SLD-ABC-004 |
SLS-123456-005 |
我希望能夠根據該列的子字串過濾行,特別是這些連字符之間的字串;第一個連字符之前總是有三個字符,第二個連字符之后總是三個字符。
這是我嘗試過的:
AND substring(server, 5, (len(server)-8)) in ('ABC', 'DBMSA')
AND substring(server, charindex('-', server) 1,(charindex('-',server, charindex('-', server) 1)-(charindex('-', server) 1))) in ('ABC', 'DBMSA')
在 SELECT 子句中使用時,這兩個都可以正常作業(獲得預期的子字串),但會出現以下錯誤
傳遞給 LEFT 或 SUBSTRING 函式的長度引數無效。
我無法使用更簡單的方法,以及像 '
上一篇:如何按天對表中的行進行分組? 下一篇:MySQLIF陳述句競爭條件