私はSQLを使い慣れていて、なかなか難しいですね。私は誰かが私のためにいくつかのものをクリアできることを望んでいます。WHERE句を使用してNull結果を表示する方法
これは私の問題です。私は、俳優が演じたカテゴリーすべてと、そのカテゴリーで演じた映画の量を表示したいと思います。例えば、彼らはアクション映画で5回プレーしています。これは、カテゴリと「ケビン・ブルーム」倍の量が、それは彼がで遊んでいませんカテゴリのNULL値を表示しませんそれぞれに果たしているとのすべてを表示します
SELECT c.name AS "Category_Name"
, Count(c.name) AS "Count"
FROM category c
JOIN film_category fc
ON c.category_id = fc.category_id
JOIN film f
ON fc.film_id = f.film_id
JOIN film_actor fa
ON f.film_id = fa.film_id
JOIN actor a
ON fa.actor_id = a.actor_id
WHERE a.first_name = "Kevin"
AND a.last_name = "Bloom"
GROUP
BY c.name
ORDER
BY c.name ASC;
:これは私がこれまで持っているものです私はそれが必要です。私はこれを理解しようと数時間を費やしましたが、助けにならなかったか、それを理解できませんでした。
ここからWHERE句を収集してこの問題が発生しています。私は、LEFT JOINを代わりに、おそらくサブクエリを使用する必要があると考えています。私は一緒に使用すると、これらの両方の上で少し不安定です。誰かが初心者に何か助けを与えることができれば、本当に感謝しています!あなたのコメントパー
はいLEFT JOINsを実行し、where句をアクタテーブルの結合のON条件に移動します – Matt
@Mattは何を言ったのですか? JOINの種類についての視覚的な説明があります:https://blog.codinghorror.com/a-visual-explanation-of-sql-joins/ – hsan
はい。内部結合を左結合に変更し、WHEREをAND – Strawberry