ホームページ バックエンド開発 PHPの問題 PHPで重複しないデータベースをランダムに取得する方法

PHPで重複しないデータベースをランダムに取得する方法

Apr 24, 2023 am 10:50 AM

Web 開発では、人気のあるサーバーサイド言語として、データベース関連の操作を処理するために PHP がよく使用されます。その中でも、重複しないデータをランダムに抽出することは重要な部分です。この機能を実現する方法を以下に紹介する。

まずはデータベースに関する知識を理解しましょう。 MySQLにはクエリ結果から重複部分を削除できる「DISTINCT」というキーワードがあります。したがって、重複しないデータをランダムに抽出したい場合は、まず「DISTINCT」キーワードを使用して元のデータの重複部分を削除し、次に残りのデータから 1 つをランダムに抽出します。

以下は、上記のプロセスを実装するための PHP コードの一部です:

<?php
// 建立数据库连接
$conn = mysqli_connect(&#39;localhost&#39;, &#39;root&#39;, &#39;&#39;, &#39;test&#39;);

// 查询数据并去重
$sql = "SELECT DISTINCT name FROM users";
$result = mysqli_query($conn, $sql);

// 将查询结果存储在数组中
$data = array();
while ($row = mysqli_fetch_assoc($result)) {
    $data[] = $row[&#39;name&#39;];
}

// 随机取出一个不重复的数据
$random = array_rand($data);
echo $data[$random];

// 断开数据库连接
mysqli_close($conn);
?>
ログイン後にコピー

上記のコードでは、まず mysqli_connect() 関数を通じてデータベースへの接続が確立され、$ SQL ステートメントは、重複していないデータをクエリするために使用されます (ここでは、データベースに「users」という名前のテーブルがあり、各行に「name」という名前のフィールドがあると仮定します)。次に、mysqli_fetch_assoc() 関数を使用して、クエリ結果を行ごとに配列に保存します。最後に、array_rand() 関数を使用して、配列から要素をランダムに削除し、その要素を出力します。

上記のコードでは、クエリ結果は mysqli_fetch_assoc() 関数を介してのみ配列に行ごとに保存できることに注意してください。また、mysqli_query() 関数を使用した後は、システム リソースの占有を避けるために、mysqli_close() 関数を通じてデータベース接続を閉じる必要があります。

上記は、PHP で重複しないデータベースをランダムに選択する方法です。この手法により、データベースから重複のないデータを簡単にランダムに取得することができ、より実用的な機能を実現できます。

以上がPHPで重複しないデータベースをランダムに取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)