(同じ行内の) 複数の列を別々の行に分割する PHP SQL クエリ
P粉336536706
P粉336536706 2023-07-27 18:07:59
0
1
328

学生のテスト結果をリストした表があります。各行には学生 ID が含まれ、列があり、各列は個々のテストのスコアを表します。ここで、各テストのスコアに対応する学生 ID の個別の行を表示できるようにするクエリを作成する必要があります。最善のアプローチを求めて Stack Overflow を検索しましたが、効率的と思われるアプローチは見つかりませんでした。 1 人の生徒 (1000002) のために以下のコードを書きましたが、達成しようとしていることに対して複雑すぎるようで、テストの 3 点に対してのみ機能するため、16 点すべてを取得するにはさらにコードを追加する必要があります。単一のクエリでこれを行う簡単な方法はありますか (推奨)、それとも行を抽出し、ループを使用して各要素から配列を構築する必要がありますか (2 番目に推奨)。

SELECT スコア_uid 、スコア1 から 評価スコア WHERE fk_assigned_uid = '1000002' すべてを結合する 選択する スコア_uid 、スコア2 から 評価スコア WHERE fk_assigned_uid = '1000002' すべてを結合する 選択する スコア_uid 、スコア3 から 評価スコア WHERE fk_assigned_uid = '1000002';


P粉336536706
P粉336536706

全員に返信 (1)
P粉908643611

理想的には、次のような構造にする必要があります:

######学生######

#id

######名前######
  • テスト
  • #id
  • ######番号######
######試験結果######

#id

######学生証######
  • test_id######結果######
  • これにより、1 つのクエリで学生のすべての結果を取得できます。リーリー
いいねを押す+0
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート
    私たちについて 免責事項 Sitemap
    PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!