前提・実現したいこと
phpMyAdminの学習をしています。
下の1枚目の写真のテーブルから
2枚目の写真のテーブルのように色を集計したものを作成したいと思っています。
①
1枚目の写真はtoysテーブルとcolorcodeテーブルを結合して作成したものです。
sql
1SELECT toys.id, name AS "商品名", color AS "色", price AS "値段" FROM prolab_sql_task.toys 2 INNER JOIN prolab_sql_task.colorcode 3 ON prolab_sql_task.toys.colorcode = prolab_sql_task.colorcode.colorcode
②
発生している問題
現在は下の写真のような状態です。
sql
1SELECT t.商品名, 2 CASE WHEN t.色="赤" THEN COUNT(t.色) END AS "赤", 3 CASE WHEN t.色="青" THEN COUNT(t.色) END AS "青", 4 CASE WHEN t.色="黄" THEN COUNT(t.色) END AS "黄", 5 CASE WHEN t.色="白" THEN COUNT(t.色) END AS "白", 6 CASE WHEN t.色="黒" THEN COUNT(t.色) END AS "黒" 7FROM (SELECT toys.id, name AS "商品名", color AS "色", price AS "値段" FROM prolab_sql_task.toys 8 INNER JOIN prolab_sql_task.colorcode 9 ON prolab_sql_task.toys.colorcode = prolab_sql_task.colorcode.colorcode) AS t 10GROUP BY t.商品名, t.色;
NULL表示しないようにするにはどうすれば良いのでしょうか。
is not null やwhere で条件を追加する方法など調べてみたのですが解決できませんでした。
ご教授いただきたいです。
回答1件
あなたの回答
tips
プレビュー