Aktualisieren von Verkaufsunterlagen mit eindeutigen Datum-Preis-Kombinationen
Diese Anleitung zeigt, wie Sie Verkaufsdatensätze identifizieren und aktualisieren, die innerhalb einer Verkaufstabelle eindeutige Preis-Datums-Kombinationen aufweisen. Ziel ist es, nur die Verkaufseinträge ohne Duplikate mit demselben Preis und Datum zu aktualisieren.
Eine Methode beinhaltet einen zweistufigen Prozess mit SQL-Abfragen:
Schritt 1: Identifizieren einzigartiger Kombinationen
Die folgende Abfrage wählt eindeutige saleprice
- und saledate
-Kombinationen zusammen mit den entsprechenden id
und der Anzahl der Vorkommen aus:
<code class="language-sql">SELECT DISTINCT saleprice, saledate, id, COUNT(*) AS count FROM sales GROUP BY saleprice, saledate HAVING COUNT(*) = 1;</code>
Diese Abfrage gruppiert Verkaufsdatensätze nach saleprice
und saledate
und filtert dann die Ergebnisse mit HAVING
, um nur die Gruppen mit einer Anzahl von eins beizubehalten, was eindeutige Kombinationen bedeutet.
Schritt 2: Aktualisieren der Verkaufstabelle
Um die status
dieser eindeutigen Verkaufsdatensätze auf „AKTIV“ zu aktualisieren, verwenden Sie die folgende Abfrage:
<code class="language-sql">UPDATE sales SET status = 'ACTIVE' WHERE id IN ( SELECT id FROM sales s INNER JOIN ( SELECT saleprice, saledate FROM sales GROUP BY saleprice, saledate HAVING COUNT(*) = 1 ) AS unique_sales ON s.saleprice = unique_sales.saleprice AND s.saledate = unique_sales.saledate );</code>
Diese Abfrage aktualisiert die Tabelle sales
und setzt status
auf „AKTIV“ für Datensätze, deren id
mit den in der Unterabfrage identifizierten übereinstimmt. Die Unterabfrage ruft effizient die id
-Werte ab, die eindeutigen saleprice
- und saledate
-Kombinationen zugeordnet sind. Das INNER JOIN
stellt sicher, dass nur übereinstimmende Datensätze aktualisiert werden.
Dieser Ansatz nutzt die Leistungsfähigkeit der GROUP BY
- und HAVING
-Klauseln, um effektiv eine eindeutige Auswahl über mehrere Spalten hinweg durchzuführen und die gewünschten Aktualisierungen zu erreichen.
Das obige ist der detaillierte Inhalt vonWie aktualisiere ich Zeilen mit eindeutigen Datum-Preis-Kombinationen in einer Verkaufstabelle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!