ホームページ >バックエンド開発 >PHPチュートリアル >PHPが試験の座席番号を自動的に配置する、ランダムな書き込みステートメントの書き方
PHP は試験の座席番号を自動的に配置します。ランダムな書き込みステートメントを作成するにはどうすればよいですか?
これは、試験の座席をランダムに配置するプログラムです。 cityid は都市 ID です。同じ都市の場合、不正行為を防ぐために、座席は 3 つ離れた位置に配置されます。
学生の数は不明ですが、すでに *
1 がいます。学生テーブル
userid cityid
001 4501
002 4502
003 4501
004 4503
005 4502
006 4502
007 4504
008 4505
009 4512
.
2.幅: 席 ID; kcid: 各診察室の座席番号は 01
5 001
7 001
8 001
です。次の効果を実現する方法 (都市 ID が同じ場合。ユーザー ID と都市 ID を 3 桁で区切って座席表に更新するだけです。とにかく、同じ都市の学生が同席しないようにできます。)
特定の SQL ステートメント、ありがとうございます。
zwid kcid userid cityid
1 001 003 4501
2 001 002 4502
3 001 009 4512
4 001 007 4504
5 001 001
6 001 0 06 4502
7 001 008 4505
8 001 004 4503
9 001 005 4502
.
.
------ソリューションのアイデア- ------------------------
これはアルゴリズムの問題です。
学生テーブルをループして、トラバースされた * を座席テーブルに挿入できます。各挿入前に、挿入された座席データの最初の 3 つの座席が同じ都市であるかどうかが判断され、同じである場合は挿入されません。そうでない場合は挿入されます。
すべての学生テーブルが挿入されるまで継続的にループします。ループ中は、挿入された * を除外する必要があります。