SQL BETWEEN Zwei Spalten in Laravel / Lumen

8

Nachfolgend finden Sie einen Auszug aus der Laravel-Dokumentation:

  

Die whereBetween-Methode überprüft, ob der Wert einer Spalte zwischen zwei Werten liegt:

     

$users = DB::table('users')->whereBetween('votes', [1, 100])->get();

Aber was, wenn ich herausfinden möchte, ob ein Wert zwischen zwei Spalten in meiner Datenbank liegt?

Das ist meine rohe SQL:

%Vor%

saturday_ot und saturday_ct sind TIME Spalten in meiner Tabelle und $t ist eine Zeitvariable. Also ich möchte überprüfen, ob die Zeit zwischen den Zeiten in beiden Spalten liegt.

    
moh_abk 22.01.2016, 15:59
quelle

1 Antwort

17

Es gibt keine Alternative zur Methode whereBetween , die für zwei Spalten gilt. Sie können dies jedoch auf zwei Arten tun:

1. Verwenden Sie whereRaw mit Bindings, wobei Sie die rohe Bedingung und eine Bindung für die Variable verwenden:

%Vor%

2. Verwenden Sie where mit zwei Bedingungen, die die zwei Spaltenwerte als Grenzen für den Wert $t verwenden:

%Vor%     
Bogdan 22.01.2016, 17:05
quelle

Tags und Links