2016-03-23 3 views
-1

Ich arbeite an einer Hausaufgabe, und alles ist gut gewesen, bis ich zu diesem Punkt kam. Mein Professor möchte, dass ich nur Daten im März, April und Mai mache, ohne den BETWEEN-Operator zu benutzen.SQL: Versuchen und fehlschlagen, Daten zu sortieren, um bestimmte Monate anzuzeigen

HINWEIS: Ich bekomme keine Fehler. Ich benutze EDUPE, das MySQL ausführt, aber kleine Abweichungen hat, wo einige Dinge einfach nicht funktionieren.

Frage war, gibt es eine Möglichkeit, um den Code zu machen, die ich richtig funktionieren habe? Oder gehe ich in die falsche Richtung?

/*Exercise Six*/ 
SELECT order_id as "Order ID", DATE_FORMAT(order_date, '%M-%d-%Y') as "Order Date" 
FROM orders 
WHERE order_date IN ('March%', 'April%', 'May%') 
ORDER BY order_date ASC; 
+0

Verwenden Sie MySQL? – potashin

+0

Sie fragen nach MySQL Workbench, oder? Ich führe es tatsächlich in einem Online-Kurs Compiler. Sehr interessante Sachen, aber ich habe MySQL-Workbench, wenn es etwas gibt, von dem du denkst, dass ich es dort besser mache. – Sierra

+1

Ich meine RDBMS, weil Datumsfunktionen für jede von ihnen unterscheiden können. – potashin

Antwort

1

Sie können wieder mit date_format versuchen:

WHERE DATE_FORMAT(order_date, '%M') IN ('March', 'April', 'May') 

Oder nur monthname():

WHERE MONTHNAME(order_date) IN ('March', 'April', 'May') 
+1

Du bist mein Held. – Sierra

+0

Du hast mir wertvolle Inhalte taughten. Vielen Dank! WO DATE_FORMAT (order_date, '% M') IN ('März', 'April', 'Mai') UND DATE_FORMAT (order_date, '% Y') IN ('2014') – Sierra

0

Ich bin nicht sicher, ob dies der effizienteste Weg ist, aber Sie können dies tun, mit "union":

select order_ID, order_date from orders 
where order_date Like '%Mar%' 
union 
select order_ID, order_date from orders 
where order_date Like '%Apr%' 
union 
select order_ID, order_date from orders 
where order_date Like '%May%' 

EDIT: Ich bevorzuge Otashins Antwort.

+0

Nun, es ist immer noch schön zu wissen, dass ich Optionen habe . :) Ich habe noch nie Union benutzt, also wird es Spaß machen damit zu spielen. – Sierra

Verwandte Themen