Memilih Nilai Unik daripada Lajur
Dalam pengurusan pangkalan data, keupayaan untuk mendapatkan nilai yang berbeza daripada lajur adalah tugas biasa. Pertimbangkan senario di mana anda mempunyai jadual dengan lajur yang mengandungi nilai bukan unik dan anda mahu memaparkan hanya nilai yang berbeza. Dalam artikel ini, kita akan membincangkan kaedah untuk mencapai ini menggunakan operator DISTINCT.
Pernyataan Masalah
Bayangkan anda mempunyai jadual MySQL dengan dua lajur, 'Tarikh' dan 'produk'. Lajur 'Tarikh' mengandungi nilai pendua, seperti yang ditunjukkan dalam sampel data di bawah:
Date | product |
---|---|
2011-12-12 | azd |
2011-12-12 | yxm |
2011-12-10 | sdx |
2011-12-10 | ssdd |
Skrip PHP mudah boleh digunakan untuk mengekstrak data daripada jadual ini dan memaparkan tarikh:
<?php $con = mysql_connect("localhost","username","password"); if (!$con) { die('Could not connect: ' . mysql_error()); } mysql_select_db("db", $con); $sql=mysql_query("SELECT * FROM buy ORDER BY Date"); while($row = mysql_fetch_array($sql)) { echo "<li><a href='http://www.website/" . $row['Date'].".html'>buy ". date("j, M Y", strtotime($row["Date"]))."</a></li>"; } mysql_close($con); ?>
Keluaran skrip ini ialah senarai tarikh, termasuk pendua:
12.dec 2011 12.dec.2011 10.dec.2011 10.dec.2011
Penyelesaian: DISTINCT Operator
Untuk mendapatkan hanya nilai yang berbeza dalam lajur 'Tarikh', kami boleh menggunakan operator DISTINCT dalam pertanyaan SQL:
SELECT DISTINCT(Date) AS Date FROM buy ORDER BY Date DESC;
Operator DISTINCT memastikan bahawa hanya unik nilai dikembalikan, menghapuskan pendua. Output yang terhasil ialah:
12.dec.2011 10.dec.2011
Dengan memasukkan operator DISTINCT, anda boleh mendapatkan dan memaparkan nilai yang berbeza dalam jadual pangkalan data anda dengan berkesan. Teknik ini boleh digunakan dalam pelbagai senario di mana penghapusan pendua diperlukan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Hanya Nilai Unik daripada Lajur Pangkalan Data Menggunakan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!