Bestimmen der Produktsichtbarkeit in MySQL mithilfe von CASE oder IF/ELSE
In einem Szenario, in dem die Produktsichtbarkeit durch vom Hersteller definierte Regionen bestimmt wird, können Sie Es kann erforderlich sein, die sichtbaren Bereiche für jedes Produkt basierend auf seinem Status (neu oder gebraucht) und den entsprechenden vom Hersteller angegebenen Regionseinstellungen dynamisch zu berechnen. Dies kann mithilfe der CASE- oder IF/ELSE-Anweisungen in MySQL erreicht werden.
CASE-Anweisungsansatz:
SELECT t2.company_name, t2.expose_new, t2.expose_used, t1.title, t1.seller, t1.status, CASE status WHEN 'New' THEN t2.expose_new WHEN 'Used' THEN t2.expose_used ELSE NULL END as 'expose' FROM `products` t1 JOIN manufacturers t2 ON t2.id = t1.seller WHERE t1.seller = 4238
In dieser Abfrage wertet die CASE-Anweisung den Status aus des Produkts (Neu oder Gebraucht) und weist bedingt den entsprechenden Exposure-Wert basierend auf den Exposure_new- oder Exposure_used-Einstellungen des Herstellers zu. Das Ergebnis ist ein einstelliger „Expose“-Wert für jedes Produkt, der seinen sichtbaren Bereich angibt.
IF/ELSE-Ansatz:
Während der IF/ELSE-Ansatz auf Sie zutrifft Der Versuch enthält logische Fehler. Eine korrigierte Version könnte wie folgt lauten:
SELECT t2.company_name, t2.expose_new, t2.expose_used, t1.title, t1.seller, t1.status, IF(status = 'New', t2.expose_new, IF(status = 'Used', t2.expose_used, NULL)) as 'expose' FROM `products` t1 JOIN manufacturers t2 ON t2.id = t1.seller WHERE t1.seller = 4238
In dieser korrigierten Abfrage ist die IF/ELSE-Anweisung bedingt Weist den Belichtungswert basierend auf dem Produktstatus und den Belichtungseinstellungen des Herstellers zu. Das Ergebnis ist das gleiche wie beim CASE-Anweisungsansatz und liefert den „Expose“-Wert für jedes Produkt.
Durch die Nutzung der CASE- oder IF/ELSE-Anweisung in MySQL können Sie die sichtbaren Bereiche für Produkte effektiv berechnen auf herstellerspezifischen Regeln, die eine dynamische und bedingte Anzeige von Produktinformationen ermöglichen.
Das obige ist der detaillierte Inhalt vonWie kann ich die Produktsichtbarkeit in MySQL basierend auf den Regionseinstellungen des Herstellers dynamisch bestimmen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!