За последние 24 часа нас посетили 17856 программистов и 1657 роботов. Сейчас ищут 1968 программистов ...

Помогите с запросом

Тема в разделе "PHP и базы данных", создана пользователем MrWolf, 17 фев 2008.

  1. MrWolf

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

    С нами с:
    15 фев 2008
    Сообщения:
    6
    Симпатии:
    0
    Помогите составить запрос
    Таб1:
    П1 п2 п3
    1 2
    2 4
    3 6 4
    4 8 3
    5 12 2
    6 14 1
    Таб2:
    П1 П2
    1 значение 1
    2 значение 2
    3 значение 3
    4 значение 4
    5 значение 5
    6 значение 6
    7 значение 7
    8 значение 8
    9 значение 9
    10 значение 10
    11 значение 11
    12 значение 12
    Select * from таб1, таб2 where таб1.п1=таб2.п1 and таб1.п2=таб2.п1 and таб1.п3=таб2.п1 не проходит, т.к. в таб1.п3 есть пустые значения.
     
  2. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
  3. MrWolf

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

    С нами с:
    15 фев 2008
    Сообщения:
    6
    Симпатии:
    0
    Лефт джоин у меня получается применить только к одному столбцу, а нужно к трем.
    Еще раз задача:
    Первая таблица представлена в виде трех столбцов с цифрами, так вот, нужно сформировать записи таким образом, чтобы значения поля 2 из второй таблицы подставлялись вместо цыфр в первой таблицы, согласно номеров поля1 таблицы 2.
     
  4. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Алиасы надо использовать:
    [sql]select tab1.*, tab21.p2 as p21, tab22.p2 as p22, tab23.p2 as p23 from tab1 left join tab2 as tab21 on tab21.p1=tab1.p1 left join tab2 as tab22 on tab22.p1=tab1.p2 left join tab2 as tab23 on tab23.p1=tab1.p3[/sql]
     
  5. MrWolf

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

    С нами с:
    15 фев 2008
    Сообщения:
    6
    Симпатии:
    0
    Спасибо вам большое за оказанную помощь!