hari ini saya mendapatkan kasus yang bagi newbie seperti saya cukup menarik. Saya memiliki data seperti ini di tabel
daftar_calon_menantu:
| id |
nama |
ranking |
| 1 |
Sujoko |
1 |
| 2 |
Suparno |
2 |
| 3 |
Supriono |
3 |
| 4 |
Sugogon |
4 |
| 5 |
Sumiarto |
5 |
| 6 |
Susu |
6 |
Karena Suatu alasan, peserta nomor 2, 4
dan 5 meninggal dunia, maka data tersebut
dihapus dari tabel daftar_calon_menantu, sehingga kini tabel saya menjadi seperti ini:
| id |
nama |
ranking |
| 1 |
Sujoko |
1 |
| 3 |
Supriono |
3 |
| 6 |
Susu |
6 |
Perhatikan kolom ranking.
Nilai pada kolom tersebut menjadi 1,3,6, tidak lagi berurutan.
Bagaimana mengubah nilainya agar menjadi 1,2,3 dengan menggunakan
PHP/MySQL?
Berikut adalah script PHP yang saya gunakan untuk menyelesaikan permasalahan tersebut:
| $conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql'); |
| mysql_select_db($dbname); |
| $resetRanking = mysql_query("SELECT ranking FROM daftar_calon_menantu ORDER by ranking") or die(mysql_error()); |
| while($row = mysql_fetch_array($resetRanking)) { |
| mysql_query("UPDATE daftar_calon_menantu SET ranking=$i WHERE ranking=".$row['ranking']); |
Begitu diakses, nilai ranking pada tabel saya langsung berurutan:
| id |
nama |
ranking |
| 1 |
Sujoko |
1 |
| 3 |
Supriono |
2 |
| 6 |
Susu |
3 |
0 Komentar untuk "PHP/MySQL: Cara Menata dan Mengurutkan Nilai yang Tidak Berurutan Dalam Tabel"