Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich mit SQL nur eindeutige Werte aus einer Datenbankspalte abrufen?

Wie kann ich mit SQL nur eindeutige Werte aus einer Datenbankspalte abrufen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-26 09:46:10499Durchsuche

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

Eindeutige Werte aus einer Spalte auswählen

Bei der Datenbankverwaltung ist die Möglichkeit, eindeutige Werte aus einer Spalte abzurufen, eine häufige Aufgabe. Stellen Sie sich ein Szenario vor, in dem Sie über eine Tabelle mit einer Spalte verfügen, die nicht eindeutige Werte enthält, und Sie nur die unterschiedlichen Werte anzeigen möchten. In diesem Artikel besprechen wir eine Methode, um dies mithilfe des DISTINCT-Operators zu erreichen.

Problemstellung

Stellen Sie sich vor, Sie haben eine MySQL-Tabelle mit zwei Spalten, „Datum“. und „Produkt“. Die Spalte „Datum“ enthält doppelte Werte, wie in den Beispieldaten unten gezeigt:

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

Ein einfaches PHP-Skript kann verwendet werden, um Daten aus dieser Tabelle zu extrahieren und die Daten anzuzeigen:

<?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);
?>

Die Ausgabe dieses Skripts wäre eine Liste von Daten, einschließlich Duplikaten:

12.dec 2011
12.dec.2011
10.dec.2011
10.dec.2011

Lösung: DISTINCT Operator

Um nur die eindeutigen Werte in der Spalte „Datum“ zu erhalten, können wir den DISTINCT-Operator in der SQL-Abfrage verwenden:

SELECT DISTINCT(Date) AS Date FROM buy ORDER BY Date DESC;

Der DISTINCT-Operator stellt sicher, dass nur eindeutige Werte vorliegen Es werden Werte zurückgegeben, wodurch Duplikate eliminiert werden. Die resultierende Ausgabe wäre:

12.dec.2011
10.dec.2011

Durch die Einbindung des DISTINCT-Operators können Sie effektiv nur die unterschiedlichen Werte in Ihrer Datenbanktabelle abrufen und anzeigen. Diese Technik ist in verschiedenen Szenarien anwendbar, in denen die Beseitigung von Duplikaten erforderlich ist.

Das obige ist der detaillierte Inhalt vonWie kann ich mit SQL nur eindeutige Werte aus einer Datenbankspalte abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn