首页 文章

从条件为真的多个表中进行选择

提问于
浏览
0

尝试运行一些没有运气的SQL,尝试从条件为真的两个表中选择数据 .

这些表是driver_details和位置 . 两个表都有user_id列,我想根据部分之间匹配的user_id从两者中获取数据 . (该选择语句起作用并返回ID);

SELECT driver_details.firstName,
                    locations.lat,
                    locations.lng
                    FROM driver_details
                    INNER JOIN locations
                    WHERE user_id = 
                    (SELECT user_id FROM locations WHERE 
                    (lat BETWEEN 0 AND 5) AND 
                    (lng BETWEEN 0 AND 5))

我收到错误:致命错误:在第33行的C:\ xampp \ htdocs \ vector \ www \ scripts \ getDriversInRange.php中的非对象上调用成员函数bind_param()

2 回答

  • 2
    SELECT d.firstName,
        l.lat,
        l.lng
    FROM driver_details d
        INNER JOIN locations l ON d.user_id = l.user_id
    WHERE l.lat BETWEEN 0 AND 5
        AND l.lng BETWEEN 0 AND 5
    

    这基本上是BWS发布的更完整的例子 .

  • 1

    您需要使用两个表中常见的SOMETHING来关联正在连接的两个表,这些表用于连接它们...您提到user_id

    ...
    FROM driver_details
    INNER JOIN locations
    ON driver_details.user_id = locations.user_id
    WHERE ...
    

相关问题