У меня есть два запроса, и они довольно comlpex, поэтому я не могу понять, как присоединиться к ним.Как я могу присоединиться к этим двум сложным запросам?
Я хочу, чтобы найти результирующий набор, когда Q1.notAnyFewID = Q2.FBID
из двух запросов
Q1:
SELECT DISTINCT notifications.`receiver` AS notAnyFewID
FROM notifications
JOIN
(SELECT notifications.`ref` AS notRef, notifications.`receiver` AS recI
FROM notifications
WHERE notifications.`ref`='tooFewLandings') AS c
ON notifications.`receiver`=c.recI
WHERE notifications.`receiver`!=c.recI
Q2:
SELECT DISTINCT R2PProfiles.id AS r2pID, R2PProfiles.`facebookID` AS FBID
FROM R2PProfiles
LEFT JOIN
(SELECT COUNT(*) AS Landings, R2PProfiles.facebookID, R2PProfiles.id
FROM pageTrack
JOIN (R2PProfiles)
ON (pageTrack.inputRefNum = R2PProfiles.id)
WHERE pageTrack.ref='getProfile-Land' AND R2PProfiles.published=2 AND R2PProfiles.`createTime`< NOW()- INTERVAL 24 HOUR GROUP BY R2PProfiles.id) AS h
USING (id) WHERE (Landings < 20)
При попытке объединить их, я, кажется, всегда растрепаться вступать или присоединяться или подбирать или «использовать» или где и как получить новое, если оно правильно.
Каков наилучший подход для сопоставления одного из запросов с результатом другого?
Почему бы не сделать это на другом языке программирования? –
Becuase Я не хочу делать несколько вызовов в БД (некоторые из этих таблиц будут довольно большими, и различные отдельные запросы могут иметь много результатов, поэтому я не хочу иметь в них циклы с db-вызовами) – Per
Это сложно. Вы пытаетесь присоединиться к результатам двух? Какова связь, IE, в какую колонку вы бы включили? Не смотря на это, я просто видел ваше редактирование. Спасибо за очистку кодовых блоков. – BClaydon