Ich versuche, meinen Code einzurichten, wo ich eine Systemsteuerung für meine Vertriebsmitarbeiter habe. Von meiner Systemsteuerung aus kann ich steuern, welche Kunden ein Rep ruft basierend auf dem Artikel, den der Kunde gekauft hat.MYSQL (WO - IF - SELECT/IN-Anweisung)
d. Wenn ich "Autos" in meiner Systemsteuerung für Sales Rep 01 zugewiesen habe, würde er nur Kunden anrufen, die Spielzeug in der Kategorie "Autos" gekauft haben. Und alle verschiedenen Spielzeuge in meiner Kategorie "Autos" sind in einer separaten Datei namens "Fahrzeuge" gespeichert.
Meine Dateien sind wie folgt:
customer (File)
+--------+-----------+--------+
| name | phone | toy |
+--------+-----------+--------+
| Gail | 777-1234 | Truck |
| June | 777-1235 | Doll |
| Mary | 777-1236 | Racer |
| Bill | 777-1237 | Ball |
| Jon | 777-1238 | Jeep |
+--------+-----------+--------+
control_panel (File)
+----------+--------+
| user | desc |
+----------+--------+
| sales_01 | Cars |
+----------+--------|
vehicles (File)
+---------+
+ item |
+---------+
| Truck |
| Racer |
| Jeep |
+---------+
Bei dem Versuch, aus diesen Code zu testen, habe ich diesen Teil meines Codes arbeiten.
select
c.name , c.phone
FROM
customer c
WHERE
c.toy IN (
SELECT
v.item
FROM
vehicles v
)
Jetzt versuche ich meine WHERE-Anweisung zu konditionieren, so dass nur dann, wenn ich „Cars“ in meinem Control Panel-Bildschirm für Benutzer „sales_01“ wähle, dann Kunden, die Autos nur auf dem Rufbild zeigen gekauft werden Benutzer "Verkauf_01".
Dies ist ein Beispiel für einen Teil des Codes, den ich getestet habe, aber nicht richtig funktionieren kann.
SELECT
c.name , c.phone
FROM
customer c , control_panel p
WHERE
(IF p.desc = "Cars"
THEN (c.toy
IN (SELECT
v.item
FROM
vehicles v)
)
END)
Jede Hilfe wird geschätzt. Danke.
Ich bekomme, dass Sie Tabellen und Beispielcode haben. Aber ich weiß nicht, was du erreichen willst. Können Sie die Frage bearbeiten und Beispielcode und gewünschte Ergebnisse angeben? –
Ihr Schema macht keinen Sinn - Sie sollten es wirklich normalisieren. – symcbean