Tampaknya berhasil:
substring_index ( substring_index ( context,',',1 ), ',', -1)
substring_index ( substring_index ( context,',',2 ), ',', -1)
substring_index ( substring_index ( context,',',3 ), ',', -1)
substring_index ( substring_index ( context,',',4 ), ',', -1)
artinya nilai ke-1, ke-2, ke-3, dst.
Penjelasan:
substring_index
bagian dalam mengembalikan nilai n pertama yang dipisahkan koma. Jadi jika string asli Anda adalah "34,7,23,89", substring_index( context,',', 3)
mengembalikan "34,7,23".
Luar substring_index
mengambil nilai yang dikembalikan oleh substring_index
bagian dalam dan -1
memungkinkan Anda untuk mengambil nilai terakhir. Jadi Anda mendapatkan "23" dari "34,7,23".
Alih-alih -1
jika Anda menentukan -2
, Anda akan mendapatkan "7,23", karena mengambil dua nilai terakhir.
Contoh:
select * from MyTable where substring_index(substring_index(prices,',',1),',',-1)=3382;
Di sini, prices
adalah nama kolom di MyTable
.