如何检查mysql中的其他表中是否存在列数据?

如何检查mysql中的其他表中是否存在列数据?,mysql,Mysql,我有3个表,分别是Jobs、results、ordered,我已经加入了“Jobs”和“results”表(使用jobID),我需要检查结果ID是否存在于orders表中,如果存在,则应打印Yes或no set @sno:=0; SELECT @sno:=@sno+1 Id, j.job_id,gr.name as Group_name, u.name User_name, p.name Project_name, j.version,j.type,vendor,tech, functional

我有3个表,分别是Jobs、results、ordered,我已经加入了“Jobs”和“results”表(使用jobID),我需要检查结果ID是否存在于orders表中,如果存在,则应打印Yes或no

set @sno:=0; SELECT @sno:=@sno+1 Id, j.job_id,gr.name as Group_name, u.name User_name, p.name Project_name, j.version,j.type,vendor,tech, functionality as Algo,words,bits,freq, j.status,r.macroId, CASE WHEN o.macroId IS NULL THEN 'No' ELSE 'Yes' END Ordered, j.cmd_line,j.submit_date FROM job j JOIN cut_results_vw r ON j.job_id = r.jobId LEFT OUTER JOIN project p ON j.project_id = p.project_id LEFT OUTER JOIN user u ON j.user_id = u.user_id LEFT OUTER JOIN groups gr ON j.group_id = gr.group_id LEFT JOIN ordered_cuts o ON r.macroId = o.macroId

如果看不到实际的表模式,很难判断,但可以这样尝试

SELECT j.*, r.*, 
       CASE WHEN o.resultid IS NULL THEN 'No' ELSE 'Yes' END resultid_is_present
  FROM jobs j JOIN results r
    ON j.jobid = r.jobid LEFT JOIN ordered o
    ON r.resultid = o.resultid
要更好地理解
JOIN
s,请阅读


发布您迄今为止尝试过的代码。阅读MySQL JOIN,查看stackoverflow中关于JOIN的其他示例,然后尝试一些东西,人们不会为您编写代码-他们会帮助您
设置@sno:=0;选择@sno:=@sno+1 Id,j.job\u Id,gr.name作为组名,u.name用户名,p.name项目名,j.version,j.type,供应商,技术,功能作为算法,字,位,频率,j.status,r.macroId,当o.macroId为空时,则选择“否”其他“是”,结束命令,j.cmd\u行,j、 提交来自作业的日期job j JOIN cut\u results\u vw r ON j.job\u id=r.jobId LEFT OUTER JOIN项目p ON j.project\u id=p.project\u id LEFT OUTER JOIN用户u ON j.user\u id=u.user\u id LEFT OUTER JOIN group gr ON j.group\u id=gr.group\u id LEFT JOIN ordered\u cuts ON r.macroId=o.macroId
谢谢juergen n peterm,我对“案例”有点困惑
SELECT j.*, r.*, 
       CASE WHEN o.resultid IS NULL THEN 'No' ELSE 'Yes' END resultid_is_present
  FROM jobs j JOIN results r
    ON j.jobid = r.jobid LEFT JOIN ordered o
    ON r.resultid = o.resultid