seperate students by different groups sql

87 Views Asked by At

How to seperate students and use two nested for loop to store the data..?

$jobID              =   85
$gd_individuals     =   4 ;

$studentQuery = $conn->query(" select s.student_pid,i.email,s.student_email, s.student_fname,
       s.student_lname,s.profile_pic from r_job_invitations i 
       LEFT JOIN tbl_students s ON i.email = s.student_email 
      where i.id_job = ".$jobID." and inv_res = 1");

//$studentResults = $studentQuery->fetch_assoc();   //total 8 students
$totalIndividuals    = mysqli_num_rows($studentQuery); //total 8 students

$groups = 2   //which is coming from total/gd_individual 8/4=2

for($j = 0; $j<$groups; $j++)   {

while($studentResults = $studentQuery->fetch_array()){    //total 8 studnets

echo "INSERT INTO r_test_group 
        (student_id,job_id,group_name) 
        values (".$studentResults['student_pid'].", ".$jobID.",Group".$j." )";


           }
        }
        exit;
    }

i want to store 1st 4 students as group1 and second 4 students as group2 etc..

myresult is coming like this

INSERT INTO r_test_group (student_id,job_id,group_name) values (22, 85,Group0 )
INSERT INTO r_test_group(student_id,job_id,group_name) values (23, 85,Group0 )
INSERT INTO r_test_group (student_id,job_id,group_name) values (25, 85,Group0 )
INSERT INTO r_test_group (student_id,job_id,group_name) values (26, 85,Group0)
INSERT INTO r_test_group (student_id,job_id,group_name) values (27, 85,Group0 )
INSERT INTO r_test_group(student_id,job_id,group_name) values (28, 85,Group0 )
INSERT INTO r_test_group (student_id,job_id,group_name) values (29, 85,Group0 )

Actual result what i am looking for is first 4 studets are group1 and second 4 group 2 and etc....

1

There are 1 best solutions below

4
On BEST ANSWER

Try this :

      $studentResults = $studentQuery->fetch_array();
    $counter  = 0;
    for($j = 0; $j<$groups; $j++)   {
    for($i = 0; $i<4; $i++){
    echo "INSERT INTO r_test_group 
            (student_id,job_id,group_name) 
            values (".$studentResults[$counter]['student_pid'].", ".$jobID.",Group".$j." )";
   $counter++;
    }
    }