Получите результаты в течение двух дат - PullRequest
0 голосов
/ 12 января 2019

Я пробовал различные решения здесь, на сайте, но, к сожалению, мне это не удалось. Мне нужно, чтобы этот запрос, который уже принимает результаты с наибольшим значением поля «voice_up», мог бы также принять второе дополнительное значение. Он забирает результаты за определенную дату (posts_date), дату начала и дату окончания.

SELECT * 
FROM   stories S 
       LEFT JOIN categories C 
              ON C.category_id = S.c_id 
       LEFT JOIN (SELECT voted_story, 
                         voter_ip 
                  FROM   votes 
                  WHERE  voter_ip = '$ip_address' 
                  GROUP  BY voted_story) V 
              ON V.voted_story = S.story_id 
WHERE  S.story_active = 1 
ORDER  BY S.vote_up DESC 
LIMIT  0, 16 

Добавляя только для пояснения, моя сложность заключается в синтаксисе, который заставляет меня ошибаться, особенно я не знаю, как вставить два "где" в одном запросе.

1 Ответ

0 голосов
/ 12 января 2019

Также можно добавить дополнительные условия условия WHERE для проверки опубликованной даты.

SELECT * 
FROM   stories S 
   LEFT JOIN categories C 
          ON C.category_id = S.c_id 
   LEFT JOIN (SELECT voted_story, voter_ip 
              FROM   votes 
              WHERE  voter_ip = "$ip_address" 
              GROUP  BY voted_story) V 
          ON V.voted_story = S.story_id 
WHERE
    S.story_active = 1 AND
    S.posted_date > "$startDate" AND
    S.posted_date < "$endDate"
ORDER  BY S.vote_up DESC 
LIMIT  0, 16 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...