#php #mysql
#php #mysql
Вопрос:
SELECT htpid AS parentid
FROM likehot WHERE htpid
IN (SELECT id FROM bultin WHERE DATE >= '1317108749')
GROUP BY htpid ORDER BY COUNT( htpid )
DESC
выдача результата
parentid
16060
16059
16058
16057
и другой запрос
SELECT app_id,bultin.id,photo_album_id,entcmmnt_id,link_url,youtubeLink,
link_image,id, mem_id, subj, body, bultin.date,parentid,
from_id, visible_to, image_link,post_via
FROM bultin
WHERE id IN ('16062','16059','16058','16057')
ORDER BY FIELD('16062','16059','16058','16057')
LIMIT 5
На самом деле я хотел ту же последовательность, что и в IN, поэтому я использовал FIELD operator
Пожалуйста, предложите спасибо
Комментарии:
1. @MarkByers, я хотел, чтобы они выполнялись в одном запросе..
2. Храбрецы выполняют запросы в одном
3. @clinisbut, у вас, ребята, есть ответ, пожалуйста..
Ответ №1:
Я не мог понять ваш вопрос.. Если вы можете, пожалуйста, объясните это лучше.. Я могу дать вам решение.. Хорошо, я хотел бы сказать, что вы не можете использовать более одного значения в первом запросе «ВЫБЕРИТЕ идентификатор ИЗ bultin, ГДЕ DATE> = ‘1317108749’)». И еще одна вещь: разве вы не используете значения в первом запросе следующим образом
ВЫБЕРИТЕ htpid В КАЧЕСТВЕ родительского идентификатора ИЗ likehot, ГДЕ htpid В (16062′,’16059′,’16058′,’16057′)
Комментарии:
1. Обычно
htpid IN (16062','16059','16058','16057')
результат появляется в первом списке.
Ответ №2:
Если я ничего не пропустил, это должно выполнить эту работу:
SELECT b.app_id, b.id, b.photo_album_id, b.entcmmnt_id, b.link_url, b.youtubeLink,
b.link_image, b.mem_id, b.subj, b.body, b.date, b.parentid,
b.from_id, b.visible_to, b.image_link, b.post_via
FROM bultin AS b
JOIN (
SELECT htpid, COUNT( htpid ) AS htpid_count
FROM likehot
GROUP BY htpid ORDER BY COUNT( htpid )
DESC
) AS l ON l.htpid = b.id
WHERE DATE >= '1317108749'
ORDER BY l.htpid_count
LIMIT 5
Дайте мне знать, если вам нужна более подробная информация об этом запросе.
Комментарии:
1. Я думаю, вам следует удалить
ORDER BY COUNT( htpid )
из подзапроса.2. Оригинал был
GROUP BY htpid ORDER BY COUNT( htpid )
, вот почему оптимизированная версия, я думаю, должна быть упорядочена так в подзапросе, а затем также упорядочена по l.htpid_count в основном запросе