首頁 >後端開發 >php教程 >如何使用 SQL 從資料庫列中僅檢索唯一值?

如何使用 SQL 從資料庫列中僅檢索唯一值?

Patricia Arquette
Patricia Arquette原創
2024-11-26 09:46:10498瀏覽

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

從列中選擇唯一值

在資料庫管理中,從列中擷取不同值的能力是一項常見任務。考慮這樣一種情況,您有一個表,其中的列包含非唯一值,並且您只想顯示不同的值。在本文中,我們將討論使用 DISTINCT 運算子來實現此目的的方法。

問題陳述

假設您有一個包含兩列「日期」的 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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn