我有一個表有一個用戶代理字段,我想操縱而不是篩選器。我想是這樣的:在MSSQL Server 2005中的正則表達式篩選列文本
select col_a, col_b, regex("/ompatible;/.+[ ;]/", col_c) from table;
在MSSQL Server是這甚至可能嗎?
我有一個表有一個用戶代理字段,我想操縱而不是篩選器。我想是這樣的:在MSSQL Server 2005中的正則表達式篩選列文本
select col_a, col_b, regex("/ompatible;/.+[ ;]/", col_c) from table;
在MSSQL Server是這甚至可能嗎?
除了安裝新東西或編寫我在生產數據庫中無法完成的一些功能之外,看起來這是不可能的。
相反,我用了CASE語句:
SELECT col_a, col_b, CASE WHEN browser_string LIKE '%MSIE 7.%' THEN 'IE7' WHEN browser_string LIKE '%MSIE 8.%' THEN 'IE8' WHEN browser_string LIKE '%MSIE 9.%' THEN 'IE9' WHEN browser_string LIKE '%MSIE 10.%' THEN 'IE10' WHEN browser_string LIKE '%MSIE ' THEN 'IExx' WHEN browser_string LIKE '%Firefox/%' THEN 'Firefox' WHEN browser_string LIKE '%Chrome/%' THEN 'Chrome' WHEN browser_string LIKE '%Safari/%' THEN 'Safari' WHEN browser_string LIKE '%bingbot%' THEN 'bingbot' WHEN browser_string LIKE '%ooglebot%' THEN 'googlebot' WHEN browser_string LIKE '%bot%' THEN 'otherbot' WHEN browser_string LIKE '%Bot%' THEN 'otherbot' ELSE 'unknown' END AS browser FROM ...
這絕不是有效的報告似乎採取年齡來運行,但它確實我需要什麼(擴展時的東西后位更多)。
你說得對。至少像這裏提到
得到一些正則表達式的功能,你應該安裝的東西。
恕我直言,SQLServer尚未本機支持正則表達式,這是不可理解的。據我所知即使在SQLServer 2012.
您可以發佈一些示例行。也許我們可以改進你已經找到的解決方案 – wumpz