sql >> データベース >  >> RDS >> Mysql

Laravel-無効なパラメーター番号:パラメーターが定義されていません

    クエリでパラメータを再利用しているため、クエリは失敗します。 LaravelはSQLクエリにPDOを使用しています。 ドキュメント によると :

    したがって、同じ値であっても、これらのパラメーターの名前を変更する必要があります。

    $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. MySQLの選択は非常に遅いようですが、改善する方法を考えることができませんか?

    2. MySQLDATETIMEDIFFクエリ

    3. BLOBを使用してMySQLデータベースに画像をアップロードする

    4. 別のコンピューターからXAMPPMySqlデータベースにアクセスする