我的语句只返回 1 行
SELECT * FROM Users WHERE UserId IN(downwardsPartnersById(292));
因为我的自定义函数“downwardsPartnersById”返回一个varchar。
结果:“292,307,308”
条件“IN”需要一个数组:('292','307','308') 但我不能使用字符串,否则它会在第一个 "," 处破坏字符串,并且只返回 UserId 292 的第一行.
我尝试使用 FIND_IN_SET 函数,但它似乎在 WHERE 中不起作用:
SELECT * FROM Users WHERE FIND_IN_SET(UserId, downwardsPartnersById(292)).