2011-12-05 23 views
16

Làm cách nào để thực hiện việc này với Sắp xếp lại?Phân tích lại cách tìm các hàng có nhiều mệnh đề và dấu thời gian> NGAY BÂY GIỜ()

SELECT FROM sessions WHERE user_id = ? AND token = ? AND expires > NOW() 

Dưới đây là những gì tôi đang cố gắng để làm (giả Session là một mô hình Sequelize):

Session.find({ 
    where: { 
     user_id: someNumber, 
     token: someString, 
     //expires > NOW() (how do I do this?) 
    } 
}).on('success', function (s) { /* things and stuff */ }); 

Cảm ơn!

Trả lời

22

bạn có cố gắng sử dụng ký hiệu mảng của công cụ tìm trong phần tiếp theo không?

Session.find({ 
    where: ['user_id=? and token=? and expires > NOW()', someNumber, someString] 
}).on('success', function (s) { /* things and stuff */ }); 

Bạn có thể kiểm trang này: http://sequelizejs.com/?active=find-objects#find-objects

Hope công trình này. Nếu không nó là một lỗi: D

+0

Ahh, xấu của tôi ... Tôi đoán tôi đã không nhận ra bạn có thể có nhiều hơn một sự thay thế sử dụng phương pháp đó. Cảm ơn! – lakenen

+0

Không vấn đề gì :) Bạn được hoan nghênh! – sdepold

+0

bạn có thể xem http://stackoverflow.com/a/29952136/494954 không? :) – lakenen

1

Phương pháp khác:

Session.find({ 
    where: { 
    user_id: someNumber, 
    token: someString, 
    expires: { 
     $gt: (new Date()) 
    } 
    } 
}).on('success', function (s) { /* things and stuff */ }); 
2

Xin lưu ý rằng khi niêm yết này và phiên bản mới nhất của sequelize, câu trả lời ở trên là hết hiệu lực. Tôi đang đăng giải pháp mà tôi đã làm việc với hy vọng cứu ai đó một thời gian.

filters["State"] = {$and: [filters["State"], {$not: this.filterSBM()}] }; 

Lưu ý $ và mảng bên trong đối tượng JSON và thiếu? thay thế mã thông báo.

Hoặc đặt một cách tổng quát hơn, vì đó có thể giúp đỡ một ai đó quấn đầu của họ xung quanh nó:

{ $and: [{"Key1": "Value1"}, {"Key2": "Value2"}] } 
+0

Tôi rất vui khi thay đổi câu trả lời được chấp nhận, nhưng tôi không có thời gian để kiểm tra ngay bây giờ. Có lẽ nếu @sdepold muốn kêu vang? – lakenen

Các vấn đề liên quan