2016-08-17 2 views
1

in meinem Projekt, ich brauche, um die Daten mit dem Attribut 'Status == 2' in der Priorität, dann geordnet nach Datum, hier ist das Modell:wie in Sequelize für MySQL bestellen, wenn ich bestimmte Bedingung in der Priorität zeigen möchte?

var Model = sequelize.define('Model', { 
    id:{type: sequelize.INTEGER()}, 
    status:{type: sequelize.INTEGER()}, 
    date:{type: sequelize.DATE} 
}); 

Status Start von 0 bis 5, und aktuelle Reihenfolge:

Model.findAll({ 
    order: [ 
     ['date','DESC'] 
    ] 
}); 

Beispiel gibt es drei Daten:

data1:{id:1,status:2,date:2016-08-16}, 
data2:{id:2,status:3,date:2016-08-17}, 
data3:{id:3,status:2,date:2016-08-18}, 
data4:{id:4,status:1,date:2016-08-16} 

und die erwartete Ausgabe nach dem Auftrag wäre wie:

data3:{id:3,status:2,date:2016-08-18}, 
data1:{id:1,status:2,date:2016-08-16}, 
data2:{id:2,status:3,date:2016-08-17}, 
data4:{id:4,status:1,date:2016-08-16} 

Was soll ich tun? Bitte hilf mir.

+0

Können Sie ein Beispiel für Ihre erwartete Ausgabe hinzufügen? Vielleicht hilft dies zu erfassen, was Sie erreichen möchten. – Fuzzzzel

+0

@Fuzzzzel danke! Ich füge nur ein Beispiel hinzu, bitte schau es dir an. –

Antwort

0

Dies wird alle Werte mit dem Status 2 erhalten, dann werden sie nach Datum sortiert.

Model.findAll({ 
    order: [ 
     ['status':'ASC'], 
     ['date':'DESC'] 
    ] 
}) 
+0

Entschuldigung, ich habe meine Frage nicht klargestellt, ich habe erwartet, Daten mit allen möglichen Status zu bekommen, aber zeige "Status == 2" Priorität, ich habe ein Beispiel in der Frage aktualisiert, bitte schau es dir an, danke! –

+0

Das kann das Problem lösen! Vielen Dank! Aber ich frage mich immer noch, ob ich, wenn ich andere Daten mit diesem Status kleiner als 2 habe, wie kann ich diese Daten hinterlegen? –

+0

Dann sortieren Sie nicht. Die Beispielausgabe, die Sie (wieder) aktualisiert haben, ist mit Sortierung oder einer einzelnen Abfrage nicht möglich. Es sieht zufällig aus, da es nicht nach Status oder nach Datum sortiert ist. –

Verwandte Themen