mysql - 关于如何完成特定MySQL JOIN的建议

标签 mysql join

我有一个 mysql 表jobs

这是jobs的基本结构。

id
booked_user_id
assigned_user_id

然后我还有另一个表,meta

元数据的结构为:

id
user_id
first_name
last_name

这是我的 php 代码

$sQuery = "
        SELECT SQL_CALC_FOUND_ROWS job_id, job_name, priority_id, meta.first_name, date_booked
        FROM jobs
        LEFT JOIN (meta) on (meta.user_id = jobs.booked_user_id)
        LEFT JOIN (jobs_priorities) on (jobs_priorities.id = jobs.priority_id)
        $sWhere
        $sOrder
        $sLimit
    ";
    $rResult = mysql_query($sQuery);

    while ( $aRow = mysql_fetch_assoc( $rResult ) )
    {
        $sOutput .= '"'.addslashes($aRow['job_id']).'",';
    }

如何加入这些表,以便 booked_user_idsigned_user_id 都可以访问 meta.first_name

当我尝试时

$sOutput .= '"'.addslashes($aRow['first_name']).'", 

什么也没发生

感谢您的建议

蒂姆

最佳答案

您可以加入两次:

SELECT j.id, b.first_name, a.first_name
FROM jobs j
JOIN meta b ON j.booked_user_id = b.user_id
JOIN meta a ON j.assigned_user_id = a.user_id

关于mysql - 关于如何完成特定MySQL JOIN的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3019773/

相关文章:

Mysql group by 计数有不同的逻辑

java - 对mysql表的操作

mysql - 如何使用nifi在mysql中获取最后插入的记录

mysql - 如何使用 MySQL 用一个不同的特定列显示行两次?

php - 从 SQL 中选择到数组中

c# windows窗体在多线程时不响应

ruby-on-rails - 我如何将 'join' 数组添加到结果字符串的开头以加入第一个字符?

sql - PostgreSQL:通过连接 2 个表获取最新更新

Mysql:对连接两个表的查询感到困惑

mysql join 子句相当于 where 子句,反之亦然