Изглежда, че работи:
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)
означава 1-ва стойност, 2-ра, 3-та и т.н.
Обяснение:
Вътрешният substring_index връща първите n стойности, които са разделени със запетая. Така че, ако оригиналният ви низ е "34,7,23,89", substring_index( context,',', 3) връща "34,7,23".
Външният substring_index приема стойността, върната от вътрешния substring_index и -1 ви позволява да вземете последната стойност. Така че получавате "23" от "34,7,23".
Вместо -1 ако посочите -2 , ще получите "7,23", защото взе последните две стойности.
Пример:
select * from MyTable where substring_index(substring_index(prices,',',1),',',-1)=3382;
Тук prices е името на колона в MyTable .