我正在使用mysql代码,这让我很头疼,我将上传我的表格图像,看看它们是什么样子以及我如何尝试获取数据。
问题是:
我正在进行更新/插入过程
所以对于查询我试图从两个表中获取公共结果,如果没有常见的东西,我想完全加载tasktemplates表,以便对新的值。
这是我正在尝试的查询
所以下面的查询在每个记录的循环中运行,并检查该记录是否存在于寺庙或任务故事中。
它可以工作但是如果没有找到任务,它就不会加载模板表,所以请指导我该怎么办..
谢谢
select tasktemplates.*,task.* from tasktemplates
right join task on task.templateid = tasktemplates.id
where 1=1
and (templateID = #val(k)# or task.id = #val(k)#)
答案 0 :(得分:0)
试一试 -
select tasktemplates.*,task.*
from tasktemplates a
left join task b
on b.templateid = a.id
答案 1 :(得分:0)
根据我的理解,您正在寻找两种不同的结果,如下所述: 1.我试图从两个表中获取常见结果 2.如果没有常见的东西,我想完全加载tasktemplates表 如果我的理解是正确的,请使用以下解决方案: 解决方案'我正在尝试从两个表中获取常见结果'是:
SELECT tmp.*
FROM tasktemplates tmp LEFT JOIN task t on tmp.id = t.templateid
where t.templateID IS NULL;
解决方案'如果没有常见的东西,我想完全加载tasktemplates表'是:
tasktemplates
此外,您可以使用左连接来获取tasktemplates
表的所有结果。我为每个tasktemplates
提及的联接的左表SELECT tmpl.*,t.*
FROM tasktemplates tmpl
LEFT JOIN task t
ON t.templateid = tmpl.id;
中的每个不匹配记录获得额外记录:
{{1}}
如果您不在寻找,请提供有关您的问题的更多详细信息。