sql >> Databáze >  >> RDS >> Mysql

Laravel $q->where() mezi daty

where můžete řetězit s přímo, bez function(q) . V laravelu je také pěkný balíček pro zpracování dat, nazvaný Carbon . Takže můžete udělat něco jako:

$projects = Project::where('recur_at', '>', Carbon::now())
    ->where('recur_at', '<', Carbon::now()->addWeek())
    ->where('status', '<', 5)
    ->where('recur_cancelled', '=', 0)
    ->get();

Jen se ujistěte, že ve skladateli vyžadujete Carbon a že používáte jmenný prostor Carbon (použijte Carbon\Carbon;) a mělo by to fungovat.

EDIT:Jak řekl Joel , můžete udělat:

$projects = Project::whereBetween('recur_at', array(Carbon::now(), Carbon::now()->addWeek()))
    ->where('status', '<', 5)
    ->where('recur_cancelled', '=', 0)
    ->get();


  1. Jaký je rozdíl mezi LATERAL JOIN a poddotazem v PostgreSQL?

  2. Vyhněte se konfliktům čísel se sekvencemi Microsoft SQL

  3. codeIgniter místo toho použijte mysql_real_escape_string(). Problém s připojením k databázi

  4. Konfigurační adresa vazby MYSql je nastavena na 0.0.0.0, ale netstat ukazuje na Ubuntu jinak