ホームページ > バックエンド開発 > PHPチュートリアル > SQL を使用してデータベース列から一意の値のみを取得するにはどうすればよいですか?

SQL を使用してデータベース列から一意の値のみを取得するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-26 09:46:10
オリジナル
433 人が閲覧しました

How Can I Retrieve Only Unique Values from a Database Column Using SQL?

列からの一意の値の選択

データベース管理では、列から個別の値を取得する機能が一般的なタスクです。一意でない値を含む列を含むテーブルがあり、個別の値のみを表示したいシナリオを考えてみましょう。この記事では、DISTINCT 演算子を使用してこれを実現する方法について説明します。

問題ステートメント

2 つの列「Date」を持つ MySQL テーブルがあると想像してください。そして「製品」。以下のサンプル データに示すように、「日付」列には重複した値が含まれています:

Date product
2011-12-12 azd
2011-12-12 yxm
2011-12-10 sdx
2011-12-10 ssdd

簡単な PHP スクリプトを使用して、このテーブルからデータを抽出し、日付を表示できます:

<?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);
?>
ログイン後にコピー

このスクリプトの出力は、重複を含む日付のリストになります。

12.dec 2011
12.dec.2011
10.dec.2011
10.dec.2011
ログイン後にコピー

解決策: DISTINCT 演算子

「日付」列の個別の値のみを取得するには、SQL クエリで DISTINCT 演算子を利用できます。

SELECT DISTINCT(Date) AS Date FROM buy ORDER BY Date DESC;
ログイン後にコピー

DISTINCT 演算子は、次のことのみを保証します。一意の値が返され、重複が排除されます。結果の出力は次のようになります。

12.dec.2011
10.dec.2011
ログイン後にコピー

DISTINCT 演算子を組み込むことで、データベース テーブル内の個別の値のみを効果的に取得して表示できます。この手法は、重複を排除する必要があるさまざまなシナリオに適用できます。

以上がSQL を使用してデータベース列から一意の値のみを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート