我有一个函数“fnc_FindIssueId”,它接受一个对象ID并返回其分配的问题ID。如何在MySQL中使用INNER JOIN的SQL函数?
当我使用纯select语句调用的函数,它工作正常:
select fnc_FindIssueId(150083); // returns 1 as issueId for objectId of 150083
select fnc_FindIssueId(150072); // returns 2 as issueId for objectId of 150072
但是,当我的内内使用加入,它进入一个永无休止的循环:
select so.id, si.id
from smart_objects as so
LEFT OUTER join smart_issues as si
on si.id = fnc_FindIssueId(so.id)
where so.id in (150083, 150072);
这是什么原因以及如何解决?
你的第二个例子是** OUTER **连接,而不是* INNER *连接。 – 2013-02-11 13:15:14