うまくいくようです:
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
最後の値を取ることができます。したがって、「34,7,23」から「23」を取得します。
-1
の代わりに -2
を指定した場合 、最後の2つの値を取得したため、「7,23」が表示されます。
例:
select * from MyTable where substring_index(substring_index(prices,',',1),',',-1)=3382;
ここでは、prices
MyTable
の列の名前です 。