Php 针对多个事件使用命名绑定的Laravel原始SQL查询

Php 针对多个事件使用命名绑定的Laravel原始SQL查询,php,database,laravel,laravel-5,laravel-query-builder,Php,Database,Laravel,Laravel 5,Laravel Query Builder,我使用DB facade和select方法来运行带有绑定的原始SQL查询。只需要知道,我们可以在查询中使用相同名称的多个参数,并通过仅提供1个参数名绑定来替换这些参数 e、 g 注意:在这个查询中,我可能不必使用学生id两次。这只是一个例子。 目的是想知道我们是否能做到这一点。我不相信这是可能的,这并不理想,但我通常会这样做: $sql = "SELECT students.id, students.name FROM students where s

我使用DB facade和select方法来运行带有绑定的原始SQL查询。只需要知道,我们可以在查询中使用相同名称的多个参数,并通过仅提供1个参数名绑定来替换这些参数

e、 g

注意:在这个查询中,我可能不必使用学生id两次。这只是一个例子。
目的是想知道我们是否能做到这一点。

我不相信这是可能的,这并不理想,但我通常会这样做:

$sql = "SELECT students.id, students.name FROM students 
                where students.student_id = :student_id_1
                where added_on = ( SELECT MAX( added_on ) AS newdate
                FROM students WHERE student_id = :student_id_2)"

    $student_id = 1;

    return DB::select($sql, [
        'student_id_1' => $student_id,
        'student_id_2' => $student_id
    ]);


这回答了你的问题吗?
$sql = "SELECT students.id, students.name FROM students 
                where students.student_id = :student_id_1
                where added_on = ( SELECT MAX( added_on ) AS newdate
                FROM students WHERE student_id = :student_id_2)"

    $student_id = 1;

    return DB::select($sql, [
        'student_id_1' => $student_id,
        'student_id_2' => $student_id
    ]);