Мне нужен счетчик и поисковый запрос для правильной работы. Считается, что запрос подсчета работает нормально, однако поисковый запрос отсутствует.
Считать запрос:
SELECT COUNT(DISTINCT tg_id)
FROM tg_keywords
WHERE tg_keyword LIKE 'keyword_1' OR tg_keyword LIKE 'keyword_2'
ORDER BY tg_keyword LIKE 'keyword_1' AND tg_keyword LIKE 'keyword_2 DESC
Returns 1 count as expected.
Поисковый запрос:
SELECT DISTINCT tg_keywords.tg_id
FROM tg_keywords LEFT JOIN tg_info.tg_id=tg_keywords.tg_id
WHERE tg_keyword LIKE 'keyword_1' OR tg_keyword LIKE 'keyword_2'
ORDER BY tg_keyword LIKE 'keyword_1' AND tg_keyword LIKE 'keyword_2' DESC, tg_info.date_added LIMIT 16 OFFSET 1
Returns 0 results (1 is expected)
Любые советы будут очень признательны
Спасибо заранее, Archie
Удалите OFFSET 1
в конце запроса, а затем попробуйте.
OFFSET 1
сообщает, что он дает вам записи из второй строки. Либо сделайте его OFFSET 0
, либо полностью удалите его.
Также вы хотите дать пользователю возможность использовать подстановочные знаки SQL? Если нет, я, вероятно, плюшу и поставлю a =.
SELECT DISTINCT tg_keywords.tg_id
FROM tg_keywords
LEFT JOIN tg_info.tg_id=tg_keywords.tg_id
WHERE tg_keyword LIKE 'keyword_1' OR tg_keyword LIKE 'keyword_2'
ORDER BY tg_keyword LIKE 'keyword_1' AND tg_keyword LIKE 'keyword_2' DESC, tg_info.date_added
LIMIT 16 OFFSET 1
Что с этим ORDER BY? Возможно, вы имели в виду:
WHERE tg_keyword LIKE 'keyword_1' OR tg_keyword LIKE 'keyword_2'
ORDER BY tg_info.date_added DESC