MySql пропускает первую найденную запись - PullRequest
1 голос
/ 13 октября 2009

в моей базе данных у меня 10 записей с почти одинаковыми данными, они отличаются только одним полем (поле отсутствует в запросе), и когда я запускаю следующий запрос

SELECT * FROM friends WHERE user_id= 'MyUserName' AND follow_back = 0 AND until_date= '2009-10-13'  LIMIT 12 

показывает только 9 записей, кто-нибудь сталкивался с подобной проблемой? Спасибо и ждем ваших ответов!

Ответы [ 4 ]

3 голосов
/ 13 октября 2009

Краткий ответ: в вашем запросе нет ничего плохого, поэтому

user_id!='MyUserName'

или

follow_back != 0 

или

until_date != '2009-10-13'

Попробуйте просто запросить по одному критерию за раз и посмотреть, сможете ли вы его нормировать. Возможно follow_back НЕДЕЙСТВИТЕЛЕН?

1 голос
/ 13 октября 2009

Когда я пытаюсь отлаживать подобные проблемы, я обычно пытаюсь решить их, используя подход «разделяй и властвуй».

Итак, попробуйте удалить условие условие «один за другим», а затем выполнить запрос. Таким образом, вы сможете изолировать нарушающее состояние.

Удачи

0 голосов
/ 03 ноября 2009

У меня была такая же проблема минуту назад. Выяснилось, что проблема была не в запросе, а в том случае, если я проверяю, возвращено ли что-нибудь. Возможно, захочу это проверить.

0 голосов
/ 13 октября 2009

Вы уверены, что все значения в столбце user_id одинаковы? Возможно, у этой отсутствующей записи есть user_id = 'MyUserName' (обратите внимание на пробел).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...