sql >> Databasteknik >  >> RDS >> Mysql

Laravel - Ogiltigt parameternummer:parametern definierades inte

Din fråga misslyckas eftersom du återanvänder parametrar i din fråga. Laravel använder PDO för sina SQL-frågor. Enligt dokumenten :

Så även om de har samma värde, måste du byta namn på dessa parametrar.

$results = \DB::select('SELECT client_id,
                           date_format(start_date,"%d/%m/%Y") as start_date,
                           date_format(end_date,"%d/%m/%Y") as end_date,
                           first_name, last_name, phone, postcode
                        FROM hire INNER JOIN client ON client.id = hire.client_id
                        where ((:sdate between start_date and end_date OR :edate between start_date and end_date) OR (:sdate2 <= start_date and end_date <= :edate2)) AND car_id = :car_id', [
    'sdate'  => $start_date,
    'sdate2'  => $start_date,
    'edate'  => $end_date,
    'edate2'  => $end_date,
    'car_id' => $car_id
]
);


  1. Hur kan jag undertrycka kolumnrubrikutdata för en enda SQL-sats?

  2. TDS Server - Använd Transact-SQL (T-SQL)-uttalanden för att arbeta med Salesforce-data i SQL Server

  3. Lära 2 med flera index

  4. nvarchar(max) vs NText