Mein Rabattmodell hat eine Periodenzuordnung. Ich versuche, einen Bereich zu schreiben, der Rabatte ab heute beginnt, einschließlich:Auswählen einer anderen Bedingung basierend auf dem Vorhandensein einer Assoziation?
- wenn es einen Punkt hat, wählen Sie die Perioden, die heute beginnt.
- , wenn es keine Zeit haben, wählen Sie diese Rabatte, die zwischen gestern und heute erstellt wurden
Meine aktuelle Abfrage kann die erste Anforderung tun (eigentlich ein bisschen komplexer als diese):
def self.begins_today
joins(:event).where("begin = ?", today)
end
Wie kann ich jedoch Anforderung 2 erreichen?
Ich dachte über die Verwendung von SQL UNION-Befehl, aber ich denke, es kann nicht als ein Bereich arbeiten.
danke, es funktioniert. Eine Sache, die ich bemerkte, ist, dass es ziemlich langsam ist (4000 Rabatte/8000 Perioden, beide mit Index). Ich denke, es wird in Ordnung sein, wenn ich andere Bereiche mische. – lulalala