За последние 24 часа нас посетили 56927 программистов и 1792 робота. Сейчас ищут 827 программистов ...

запрос для выбора записи по двум таблицам

Тема в разделе "MySQL", создана пользователем aswind, 5 окт 2009.

  1. aswind

    aswind Активный пользователь

    С нами с:
    5 окт 2009
    Сообщения:
    27
    Симпатии:
    0
    Всем привет! Возникла проблема!
    Необходимо составить SQL запрос, который выберет из таблицы users только тех пользователей, у которых в таблице users_profile поля age и city равны, к примеру 32 и Moscow. В обоих таблицах есть поле id (а именно user_id и profile_id), которое для каждого юзера одинаково. Т.е. мне надо получить только тех юзеров из таблицы users, у которых в другой таблице (ключевое поле id) age и city равны каким либо значениям.
    Также, интересно, а можно ли в массив, выдаваемый fetch_array сохранить поля с обоих таблиц, дабы не делать кучу лишних запросов. Естественно, ключи массива (которые внутри []) будут уникальными (полей с одинаковыми названиями в таблицах нет.
    Заранее огромное спасибо!
     
  2. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    как-то так:
    Код (Text):
    1. select * from users u join users_profile up on u.user_id = up.profile_id where up.age=32 and city='Moscow'
     
  3. aswind

    aswind Активный пользователь

    С нами с:
    5 окт 2009
    Сообщения:
    27
    Симпатии:
    0
    Ух ты! Вот так работает!
    [sql]SELECT * FROM users u JOIN users_profile_main up ON u.user_id=up.id[/sql]
    и выбирает все записи, но в $row[] ключ массива (или как его там), как будто выбрано с одной таблицы! Спасибо огромное! Я так понимаю, теперь в запросе вместо users использовать u, а вместо users_profile — up?