За последние 24 часа нас посетили 66539 программистов и 1617 роботов. Сейчас ищут 1054 программиста ...

CASE

Тема в разделе "MySQL", создана пользователем igordata, 29 мар 2011.

  1. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Как ни изгаляюсь - не пашет

    [sql]SELECT * FROM

    CASE `users`.`type`
    WHEN 0 THEN `managers`;
    WHEN 1 THEN `authors`;
    WHEN 2 THEN `clients`;
    END CASE

    WHERE `users`.`id` = 41[/sql]

    в зависимости от `users`.`type` должна выбраться таблица и из нее соотв. все поля.

    пробовал так, тоже не пашет
    [sql]SELECT * FROM `users`,
    CASE `users`.`type`
    WHEN 0 THEN `managers`;
    WHEN 1 THEN `authors`;
    WHEN 2 THEN `clients`;
    END CASE
    WHERE `users`.`id` = 41[/sql]
     
  2. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    Слить всех в одну таблицу и поставить роль, не?
    Или даже не роль создать отдельную таблицу полномочий и таблицу связей. А потом еще таблицу групп...
     
  3. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    А если так?

    [sql]SELECT * FROM

    CASE
    WHEN `users`.`type` = 0
    THEN `managers`
    WHEN `users`.`type` = 1
    THEN ....
    WHEN `users`.`type` = 2
    THEN ....
    END CASE[/sql]


    А вообще Volt(220) прав) Нефиг таблицы плодить)
     
  4. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    они отличаются набором данных