***ルール: --- いかなる結合も使用せず、相関サブクエリも使用しないでください。--- コンマ結合を使用しないでください。--- 結合を使用すると、そのタスクのポイントは得られません。From 句は 1 つのテーブルのみを参照します。--- 変数を使用しないでください。
***私の問題は次のとおりです。books テーブル内の本のタイトルに Bird が含まれる各本について、本の ID とタイトル、およびその本の注文があるかどうかに関するメッセージを表示します。Count() 関数は使用しないでください。出力はこの形式に従い、OrderStatus 列で並べ替えられ、注文のない本が最初になります。2 番目のソート キーは書籍 ID です。
count() 関数と相関サブクエリを使用したソリューションを次に示します。どちらも使用しないでこの問題を解決するにはどうすればよいですか? 結合も使用できないことを忘れないでください。
SELECT book_id, title
, CASE (
SELECT count(*)
FROM a_bkorders.order_details OD
WHERE OD.book_id = BK.book_id
)
when 0 then 'no orders'
when 1 then 'Have orders'
when 2 then 'Have orders'
when 3 then 'Have orders'
else 'Have orders'
End as OrderStatus
From a_bkinfo.books BK
WHERE title Like '%Bird%'
ORDER BY OrderStatus, book_id;