In SQL es ziemlich trivial ist so etwas wie das zu tun folgende:Laravel: Mathematik in WHERE-Klausel
SELECT * FROM properties WHERE (price/acres) = 3000;
Diese jede Eigenschaft wählen würde, wo der "Preis pro Acre" ist 3000
ich tun will das in Laravel. Ich habe versucht, die folgenden:
Property::where('price/acres', 3000)->get();
jedoch diese auf den Spaltentitel in Backticks eingewickelt, die folgende SQL-Erstellung:
select * from `properties` where `price/acres` = 3000
Dies scheiterte (natürlich) mit dem Fehler: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'price/acres' in 'where clause'
ah okay, das ist wahrscheinlich eine bessere Art und Weise jetzt, dass ich darüber nachdenke! – DrewT
Nicht so elegant, wie ich möchte, da ich jetzt Benutzereingaben reinigen und flüchten muss, aber es funktionierte – stevendesu
Wenn Sie eine Zahl als Variable übergeben müssen, ändern Sie die 3000 zu einem?, Und übergeben Sie es stattdessen. 'Property :: whereRaw ('(Preis/Acres) =?', [$ Yourvariable]) -> get();' Dies kann nicht mit Spaltennamen gemacht werden. – aynber