'SELECT * FROM t1
JOIN t2 ON t1.wid = t2.wid
WHERE t2.wid IS NULL
LIMIT ' . $number;
此代码没有任何回报给我,你能帮助我为什么不拿回值?
答案 0 :(得分:1)
JOIN t2 ON t1.wid = t1.wid
你是说那个意思吗?或者你真的是指t1.wid = t2.wid?在这种情况下,您需要左连接。
修改强>
好的,所以你修好了。除非t2中的行具有与t1中具有相同wid的行匹配的wid,否则不会显示任何结果。
如果您需要结果,请将其更改为:
'SELECT * FROM t1
LEFT JOIN t2 ON t1.wid = t2.wid
WHERE t2.wid IS NULL
LIMIT ' . $number;
下一次编辑
如果目标是使用t1中的值来更新t2,而这些值在t2中是不可能的,那么它将是这样的:
'INSERT INTO t2
SELECT t1.* FROM t1
LEFT JOIN t2
ON t1.wid = t2.wid
WHERE t2.wid IS NULL
LIMIT ' . $number;
缺少的步骤只是返回t1的结果,然后将它们插入到t2中。
答案 1 :(得分:0)
我认为你有一个错字。
'SELECT * FROM t1
JOIN t2 ON t1.wid = t2.wid
WHERE t2.wid IS NULL
LIMIT ' . $number;