За последние 24 часа нас посетили 17587 программистов и 1678 роботов. Сейчас ищут 1920 программистов ...

Помогите составить SQL запрос.

Тема в разделе "MySQL", создана пользователем Roomlife, 20 ноя 2013.

  1. Roomlife

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

    С нами с:
    6 авг 2010
    Сообщения:
    34
    Симпатии:
    0
    Есть таблица FILIAL со столбцами ID и OTDELEN (данные столбцов число(ID) и текст(OTDELEN))
    (1, Москва)
    (2, Воронеж)
    (3, Саратов)
    Есть таблица VID_KA со столбцами ID , ID_FILIAL_1 и ID_FILIAL_2 и т.д. (Тут только числа)
    (1, 0, 0)
    (2, 0, 0)
    (3, 0, 1)
    т.е. когда в таблицу FILIAL добавляется новая строка, например (3, Саратов) в таблицу VID_KA добавляется столбец ID_FILIAL_3 (т.е. цифра 3 равна ID из таблицы FILIAL)
    Необходимо сделать такой запрос, чтобы в результате выполнения php скрипта, вместо ID_FILIAL_3 было подставлено его название, т.е. "Саратов".
    Если ID_FILIAL_1 то это Москва, если ID_FILIAL_2 то это Воронеж и т.д.
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а иначе незачет?
     
  3. Roomlife

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

    С нами с:
    6 авг 2010
    Сообщения:
    34
    Симпатии:
    0
    Какой глубокий и развернутый ответ. Я прям сразу во всем разобрался =)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а че на пары забивал?
     
  5. Roomlife

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

    С нами с:
    6 авг 2010
    Сообщения:
    34
    Симпатии:
    0
    Ну во-первых отучился год назад, год не кодил, к тому же SQL у нас был поверхностный(((
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
  7. Roomlife

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

    С нами с:
    6 авг 2010
    Сообщения:
    34
    Симпатии:
    0
    INNER JOINS тут вообще не причем :) В общем, как обычно, додумался сам, как сделать. Т.е. как Менделеев - увидел решение во сне :) Кому надо:
    Код (Text):
    1. $sql1= mysql_query("SELECT * FROM filial"); //Выбираем все столбцы из таблицы
    2. $result= mysql_fetch_array($sql1); // преобразуем массив в значения
    3. $res55 = mysql_query("SELECT `id_filial_".$result[0]."` FROM `vid_ka`"); // подставляем значение из первого столбца таблицы с названиями, проверяем, есть ли такой столбец
    4. if ($res55) {
    5.    echo $result[1]; //если есть, выводим название из первой таблицы с названиями
    6. }
    7. else {
    8. echo "Такого отделения не существует!!"; // если нет, пишем что столбец отсутствует. Либо можно вообще ничего не писать.
    9. }
    Ну и запустить циклично, пока $result[0] не достигнет окончания :)