質問: '群馬産' then b_type end as type ``` で、a_typeとb_typeで一致したほうを選ぶようにしたのですが、上手くいかず・・・。 知恵をお貸しください。 よろしくお願いいたします。
回答: テーブル設計が良くないと思いますが、このままやるなら 1.果物リストと野菜リストをサブクエリで作成して ``` 果物 野菜 いちご 栃木産 050 しいたけ 栃木産 200 いちご 茨城産 100 しいたけ 秋田産 150 ぶどう 茨城産 120 人参 群馬産 150 ぶどう 群馬産 130 人参 埼玉産 100 ``` 2.それらを産地で結合 ``` 栃木産 いちご 050 しいたけ 200 群馬産 ぶどう 130 人参 150 ``` 3.合計額と産地で絞込み SQLにするとこんな感じでしょうか? ``` SELECT f.name AS 果物, v.name AS 野菜 FROM ( SELECT name, a_type AS type, a_price AS price FROM テーブル WHERE category = '果物' UNION SELECT name, b_type AS type, b_price AS price FROM テーブル WHERE category = '果物' ) AS f INNER JOIN ( SELECT name, a_type AS type, a_price AS price FROM テーブル WHERE category = '野菜' UNION SELECT name, b_type AS type, b_price AS price FROM テーブル WHERE category = '野菜' ) AS v ON f.type = v.type WHERE (f.price + v.price) >= 200 AND f.type = '群馬産' ``` ※SQLiteは余り知らないので、動かない節があるかも知れません。