您好我最近的工作在哪裏我應該從數據庫中獲取數據,而不管單詞之間存在空格數即如何查詢數據庫來不論Retrive存在於數據庫記錄
如果應用空間數據從應用程序到數據庫的輸入字符串是「ChennaiCampus」[沒有任何空間]但數據庫中的實際值爲「Chennai Campus」[WITH WITHBINDEN的一個或多個空間]仍應能夠檢索它。使用下面的查詢
SELECT CAMPUS_ID距離校園
目前蔭WHERE CAMPUS_NAME =?
哪裏?表示應用程序在運行時提供的值。
您好我最近的工作在哪裏我應該從數據庫中獲取數據,而不管單詞之間存在空格數即如何查詢數據庫來不論Retrive存在於數據庫記錄
如果應用空間數據從應用程序到數據庫的輸入字符串是「ChennaiCampus」[沒有任何空間]但數據庫中的實際值爲「Chennai Campus」[WITH WITHBINDEN的一個或多個空間]仍應能夠檢索它。使用下面的查詢
SELECT CAMPUS_ID距離校園
目前蔭WHERE CAMPUS_NAME =?
哪裏?表示應用程序在運行時提供的值。
SELECT CAMPUS_ID FROM CAMPUS WHERE replace(CAMPUS_NAME,' ','') = replace(?,' ','')
這使得雙方甚至空間:
SELECT CAMPUS_ID FROM CAMPUS
WHERE replace(CAMPUS_NAME,' ','') = replace(?,' ','')
試試這個:
SELECT CAMPUS_ID
FROM CAMPUS
WHERE replace(CAMPUS_NAME,' ','') = replace(:parameter,' ','') ;
注意,所有提供的答案至今不會使用你可能對任何指數的' CAMPUS_NAME'欄。如果有大量數據集,您的查詢可能不會很高效。你可以通過創建一個基於函數的索引來減輕這一點,該索引刪除了CAMPUS表中CAMPUS_NAME列的空格。 – Ollie 2012-03-07 11:16:10