はじめまして、よろしくおねがいいたします。
現在PostgreSQLの勉強中の身です。
あるデータを格納し、SELECT文で出そうとしています。
商品ID 塩分 1 1.0~1.2 2 0.05 3 1 4 0.5~1.0
このようなデータなのですが、1.0~1.2のように「~」があるとよくないので、
2と4に分割して最小値、最大値それぞれ別々にしたいと考えてます。
商品ID 最小塩分量 最大塩分量 1 1 1.2 2 0.05 0.05 3 1 1 4 0.5 1.0
このように表示できればと考えています。
調べてみたところSUBSTRとPOSITIONを組み合わせたらできそうだったので、
PostgreSQL
1select 商品ID, substr(塩分, position('~' in 塩分) + 1) as 最大塩分量 from 商品データ;
とすることで、最大のほうは求めることができました。
しかし、同じようにSUBSTRとPOSITIONを使って最小値を出したくても、
PostgreSQL
1select 商品ID, substr(塩分, 0, position('~' in 塩分)) as 最小塩分量 from 商品データ;
これでは「~」を含むものだけ抽出になってしまいます(考えれば分かるんですが)
何かいい方法があればご教授お願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/08/19 07:14