sql >> データベース >  >> RDS >> Oracle

Oracleでレコードのグループをマージする方法は?

    使用:

    • 最大
    • グループ化
    SQL> SELECT NAME,
      2    MAX(subject_1) subject_1,
      3    MAX(marks_1) marks_1,
      4    MAX(subject_2) subject_2,
      5    MAX(marks_2) marks_2
      6  FROM t
      7  GROUP BY name;
    
    NAME SUBJECT_1    MARKS_1 SUBJECT_2    MARKS_2
    ---- --------- ---------- --------- ----------
    Jon  Maths             60 Science           70
    Tom  Maths             90 Science           50
    
    SQL>
    

    ちなみに、テーブルのデザインについて考える必要があります。 。 name, subject, marksの3つの列しか持つことができませんでした 。

    個別の列が必要な場合 同じテーブルに、単一の行として配置する必要があります 各学生のために。そして、あなたが学生のための新しい主題を持っているとき、それから更新 新しい行を追加する代わりに、その学生の行。



    1. to_charによるフォーマット間隔

    2. 日付/時刻範囲を日ごとに分割するには、OracleSQLが必要です

    3. T-SQLを使用してSQLServerの外部キーの名前を変更する

    4. android listviewは、アプリを閉じずにデータを更新/更新します