Ich versuche Zeit Verfügbarkeit für mein Planungssystem zu bekommen. Ich weiß, wie man es mit normaler SQL-Abfrage macht, aber ich habe Probleme, die Abfrage zu Laravel Eloquent zu übersetzen. Meine Frage ist wie die untenLaravel MySQL: Übersetzen von SQL-Abfragen nach Laravel Eloquent
$query = "SELECT * FROM schedules WHERE (time_start BETWEEN '$start_datetime' AND '$end_datetime') OR (time_endBETWEEN '$start_datetime' AND '$end_datetime')";
und hier ist was ich mit Laravel versucht haben, eloquent bisher
$sch = DB::table('schedules')
->where(function ($query) {
$query->whereBetween('time_start', [$start_datetime, $end_datetime]);
})
->orWhere(function($query){
$query->whereBetween('time_end', [$start_datetime, $end_datetime]);
})->get();
irgendwelche Ideen, wie man es richtig machen? Ich erhalte einen Fehler mit meiner Laravel eloquent Abfrage Undefined variable: start_datetime
Dank
Dank. aber ich bekomme keine Ergebnisse aus der Datenbank. Es wird eine leere Sammlung zurückgegeben. Ich versuchte auch, die Werte der Variablen $ start_datetime und end_datetime zu ändern, um eine Übereinstimmung in der Datenbank zu erzielen, aber immer noch keine Ergebnisse. –
dann etwas falsch in Ihrer Abfrage, Sie können Abfrageprotokoll aktivieren und vergleichen Sie Ihre Abfrage dann können https://stackoverflow.com/questions/18236294/how-do-i-get-the-query-builder-to-output- its-raw-sql-query-as-a-string –
habe es gefunden, ich gebe falsche Werte an die Variablen, deshalb funktioniert es nicht .. jetzt bekomme ich Ergebnisse. Danke Kumpel! –