Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk mendapatkan pangkalan data bukan pendua secara rawak dalam php
Dalam pembangunan web, PHP, sebagai bahasa sebelah pelayan yang popular, sering digunakan untuk mengendalikan operasi berkaitan pangkalan data. Antaranya, mengekstrak data bukan pendua secara rawak adalah bahagian penting. Kaedah untuk mencapai fungsi ini akan diperkenalkan di bawah.
Pertama sekali, mari belajar tentang pengetahuan berkaitan pangkalan data. Dalam MySQL, terdapat kata kunci yang dipanggil "DISTINCT" yang boleh mengalih keluar bahagian pendua daripada hasil pertanyaan. Jadi, jika kita ingin mengekstrak data bukan pendua secara rawak, kita boleh menggunakan kata kunci "DISTINCT" terlebih dahulu untuk mengalih keluar bahagian pendua data asal, dan kemudian mengekstrak satu secara rawak daripada data yang tinggal.
Berikut ialah sekeping kod PHP untuk melaksanakan proses di atas:
<?php // 建立数据库连接 $conn = mysqli_connect('localhost', 'root', '', 'test'); // 查询数据并去重 $sql = "SELECT DISTINCT name FROM users"; $result = mysqli_query($conn, $sql); // 将查询结果存储在数组中 $data = array(); while ($row = mysqli_fetch_assoc($result)) { $data[] = $row['name']; } // 随机取出一个不重复的数据 $random = array_rand($data); echo $data[$random]; // 断开数据库连接 mysqli_close($conn); ?>
Dalam kod di atas, sambungan ke pangkalan data mula-mula diwujudkan melalui fungsi mysqli_connect() dan pernyataan $sql digunakan Tanya data unik (andaikan di sini terdapat jadual bernama "pengguna" dalam pangkalan data, dan setiap baris mempunyai medan bernama "nama"). Kemudian gunakan fungsi mysqli_fetch_assoc() untuk menyimpan hasil pertanyaan ke dalam tatasusunan baris demi baris. Akhir sekali, gunakan fungsi array_rand() untuk mengalih keluar elemen secara rawak daripada tatasusunan dan mengeluarkan elemen tersebut.
Perlu diambil perhatian bahawa dalam kod di atas, hasil pertanyaan boleh disimpan baris demi baris dalam tatasusunan hanya melalui fungsi mysqli_fetch_assoc(). Dan selepas menggunakan fungsi mysqli_query(), anda perlu menutup sambungan pangkalan data melalui fungsi mysqli_close() untuk mengelakkan daripada menduduki sumber sistem.
Di atas ialah kaedah php+ memilih pangkalan data bukan pendua secara rawak. Melalui kaedah ini, kita boleh mendapatkan semula data bukan pendua secara rawak daripada pangkalan data dan mencapai lebih banyak fungsi praktikal.
Atas ialah kandungan terperinci Bagaimana untuk mendapatkan pangkalan data bukan pendua secara rawak dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!