0

名前の付いた2つのテーブルがpatient_listありdentist_list、歯科医が多くの患者を持つことができる場所に、歯科医が持っている患者の数を取得して注文したいと考えています。

ここに、医師の各患者を取得するサンプルコードがあります。

$query_dentist = "SELECT * FROM dentist_list ORDER BY ID ASC";
$res_dentist   = mysql_query($query_dentist);

if ($res_dentist) {
    while ($row_dentist = mysql_fetch_array($res_dentist)) {

    }
}

すべての歯科医を取得したら、while 内に新しいクエリを作成して、すべての患者数を取得します。

$dentist_id = $row_dentist['id'];
$query_patient= "SELECT COUNT(*) as patient_num FROM patient_list
                                 WHERE dentist_id ='$dentist_id'";

$res_patient=mysql_query($query_patient);
if($res_patient)
{
     while($row_patient=mysql_fetch_array($res_patient))
     {

     }
 }

たとえば、クエリの出力は次のとおりです。

doctor 1 has 10 patient
doctor 2 has 5 patient
doctor 3 has 100 patient

PHP を使用する代わりに、代わりに MySQL ステートメントを使用することは可能ですか? 患者数でソートする必要があるため、クエリを 1 つだけ作成します。

4

2 に答える 2