1
我在我的數據庫中有一個數據列,它有一個項目編號,數字格式如下,YYYYnnnn.ee(例如20140124.00)。由於數字有三個不同的部分,用戶可以通過YYYY或nnnn進行搜索。我寫了一個由YYYY搜索的查詢。我需要爲nnnn寫一個查詢。字符串中的SQL查詢搜索
如何編寫查詢來搜索另一個字符串的特定位置中的特定字符串?
我在我的數據庫中有一個數據列,它有一個項目編號,數字格式如下,YYYYnnnn.ee(例如20140124.00)。由於數字有三個不同的部分,用戶可以通過YYYY或nnnn進行搜索。我寫了一個由YYYY搜索的查詢。我需要爲nnnn寫一個查詢。字符串中的SQL查詢搜索
如何編寫查詢來搜索另一個字符串的特定位置中的特定字符串?
你可以使用SUBSTRING。
SUBSTRING的第一個參數應該是columname,下一個參數是開始字符的索引,最後一個參數是字符數。
下面的示例將返回列中的nnnn部分。在下面的例子中,我們正在尋找記錄中,其中NNNN等於1234
SELECT *
FROM tablename
WHERE
(SUBSTRING(columnName, 5, 4) = '1234')
請注意,如果你的列是一個數字(十進制)。您需要先將其轉換爲varchar(字符串)。例如:
SELECT *
FROM tablename
WHERE
(SUBSTRING(CAST(columnName AS VARCHAR(20)), 5, 4) = '1234')
您應該將其拆分爲單獨的列。 – 2014-12-05 16:54:48