[SQL]プログラマーSELECT問題


ANIMAL INS表



1.逐次全体クエリー

SELECT * FROM ANIMAL_INS;
SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID;

2.ANIMAL IDの逆順序でNAMEとDATETIMEを検索する

  • DESC:降順
  • ASC:昇順(デフォルト適用)
  • SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC;

    3.ID順に動物の病気の動物のIDと名前を調べる


    条件は
  • 2WHEREであることが明確である
  • 文字列比較LIKEキーワード
  • を使用
  • %:すべての文字
  • :1文字
  • A%:Aで始まるすべての文字
  • A:A先頭の2文字
  • SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION LIKE "Sick" ORDER BY ANIMAL_ID

    4.ID順に若い動物のIDと名前を調べる

  • 若い動物のINTAKE CONDITIONはAGED状態ではありません.
  • 条件が「~いいえ」のはNOTです.
  • ANIMAL IDはPKであるため、ORDER BY ANIMAL_ID ASCを省略することができる.
  • SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION NOT LIKE "Aged" ORDER BY ANIMAL_ID ASC;

    5.ANIMAL ID順に全ての動物のIDと名称を検索する

    SELECT ANIMAL_ID, NAME FROM ANIMAL_INS;

    6.すべての動物のIDと名前を表示します。保護開始日は名前順ですが、名前が同じ場合は、保護後に開始した動物を先に表示します。

  • 並べ替えの複数の条件は、並べ替え基準としてのフィールド名をリストすることができる.
  • の名前を基準とし、同じ名前の場合、保護開始日は次のように基準(降順)となります.
  • ORDER BY NAME ASC, DATETIME DESC;
  • ASC(昇順)
  • は省略可能
    SELECT ANIMAL_ID, NAME, DATETIME FROM ANIMAL_INS ORDER BY NAME ASC, DATETIME DESC;

    7.最初に動物保護所に入った動物の名前を問い合わせる


    前のN個の
  • LIMITキーワードを使用する.
  • SELECT NAME FROM ANIMAL_INS ORDER BY DATETIME LIMIT 1;