2010-04-22 25 views
1

我正在創建一個mysql函數,它接受一個varchar並將其更改爲基於映射表的int。mysql存儲過程是否支持像數組,哈希等數據類型?

select name, convert_to_code(country) from users where sex = 'male' 

在此,convert_to_code()函數採用一個國家名稱(例如日本,芬蘭..)並且將其更改爲國家代碼是基於映射表稱爲country_maping的整數(例如1001,2310 ..)如下所示:

country_name (varchar) | country_code (int) 
Japan     | 1001 
Finland    | 2310 
Canada     | 8756 

當前,存儲的函數需要select country_code from country_mapping where country_name = country_name並返回查詢結果。是否可以在SP中創建一個散列數據結構來優化該過程,以便它不需要爲每行匹配where子句執行查詢。

在此先感謝!

回答

0

你應該使用表格,因爲你在做。

如果您爲這兩列創建覆蓋索引,應該儘可能提高效率。

相關問題