Не правильное сравнение в запрросе (помогите)

Печать RSS
198

Автор
Землянин
0
Есть запрос

В таблице ADMINS_TABLE запрашиваем запись в которой пароль и маил равен паролю и маилу из таблицы TOP_USERS_TABLE

ADMINS_TABLE:
admin_pass
admin_email

TOP_USERS_TABLE
user_pass
user_email


если t1.admin_pass=t2.user_pass AND t1.admin_email!=t2.user_email то ничего не выводит,
а если t1.admin_pass=t2.user_pass AND t1.admin_email=t2.user_email
^^^ Косяк в том что по паролю нет никакого ставнения, а это большой минус.

Собственно запрос
"SELECT t1.admin_id FROM ".ADMINS_TABLE." AS t1, " . TOP_USERS_TABLE . " AS t2
WHERE t1.admin_pass=t2.user_pass AND t1.admin_email=t2.user_email"

Вопрос. Почему нет явного сравнения пароле а толь емаил адрессов? И как сделать чтоб было сравнение по паролю и емайлу?

Добавлено через 05:19 сек.
Чёрт, ложная тревога! сам разобрался. ток зря писал столько.

У меня было несколько записей в TOP_USERS_TABLE с одинаковым емайлом и разними паролями. ***...
О

Землянин
0
Сделай лучше через JOIN, будет яснее и кода меньше.
Автор
Землянин
0
2. Aligan, Join, до него я еще пока не добрался, а так и такой код скула норм, пока не надоело еще, а так все норм.

Добавлено через 01:26 сек.
А как с join сделать? может кто перепишет етот код, а? объясните

Дедушка
0
SELECT a.admin_pass,a.admin_email,u.user_pass,u.user_email FROM ADMINS_TABLE a LEFT JOIN TOP_USERS_TABLE u ON a.admin_pass=u.user_pass AND a.admin_email=u.user_email
Автор
Землянин
0
4. Basters, Спасибо) надо продвинуться по этой теме
Автор
Землянин
0
И работает в половину быстрее

Дедушка
0
Ну еще бы)
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск