Перейти к содержимому


Партнерская программа HomeWork

Как по мне глюк MySQL

#1 кипятильник

кипятильник
  • Пользователь
  • 102 сообщений
  • Репутация: 0
0

Отправлено 08 Февраль 2009 - 18:34

Сделал запрос к базе как бы все работает НО!
"SELECT carstabl.*, userstabl.*, carstabl.id AS idcars FROM carstabl, userstabl WHERE userstabl.mail=carstabl.mail HAVING userstabl.region = 8 and carstabl.marka = 'ACURA' ORDER BY idcars DESC"

в итоге при смене переменой carstabl.marka выборка происходит правильно
при смене переменой userstabl.region ему просто пофигу!!! если удалить carstabl.marka, и оставить только userstabl.region то работает коректно
как изменить запрос INNER пробывал тоже самое(((

 

 

  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85
Советую обратить внимание на следующее:
  1. Faq по Mysql
  2. Бесплатный хостинг с php и mysql
  3. Использование ОДНОЙ базы mysql для двух сайтов
  4. Проблема с базой данных
  5. Не передаётся $значение в function()

#2 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 08 Февраль 2009 - 21:17

Это точно не глюк MySQL 100 раз такие запросы писал, всё работает.
"SELECT carstabl.*, userstabl.*, carstabl.id AS idcars FROM carstabl LEFT JOIN userstabl ON carstabl.mail=userstabl.mail AND (  userstabl.region = 8 AND carstabl.marka = 'ACURA') ORDER BY idcars DESC"

А вообще я не очень понял как тебе нужно объединить таблицы. Опиши словестно и приведи примеры таблиц(скриншоты), чтобы было более понятно.
  • 0

#3 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 09 Февраль 2009 - 00:56

Стало более понятно... Нужно взять только общие записи из двух таблиц и сопаставить по полю mail + задать 2 условия (по марке автомобиля и по региону пользователя)
SELECT t1.*, t2.* FROM carstabl t1 INNER JOIN userstabl t2 ON t1.mail=t2.mail WHERE t1.marka='Acura' AND t2.region=8

  • 0


Оформление форума – IPBSkins.ru