我试图插入dev.test1表中的项目列表,但我在逻辑上很吃力。。。
面临以下问题:
- 在插入语句之前,我想添加"如果不存在"-在dev.qa_postmetas中选择内容
- 我在第二个查询中得到的f.URL不是来自dev.test1-如果想选择f.URL,其中f.title=b.title
查询:
INSERT INTO dev.qa_posts (type, categoryid, userid, created, title, content, tags)
(SELECT 'Q_QUEUED', '1', '3', NOW(), f.title, f.img, f.tagsv
FROM dev.test1 f)
LIMIT 1;
INSERT INTO dev.qa_postmetas (postid, title, content)
(select MAX(b.postid) , 'qa_q_extra',f.URL
from dev.qa_posts b
left JOIN dev.test1 as f on b.postid = f.id)
LIMIT 1 ;
如有任何帮助,将不胜感激
为了避免emty记录,请在MySQL中尝试IS NULL函数。
将第二个查询联接到另一个查询,并将插入限制为一个。您可能有更多来自联接查询的结果,然后再尝试插入。
调试您的第二个联接选择以检查结果。去掉插入联接查询中所有记录的限制。
你是这个意思吗?