2013-12-19 5 views
1

То, что я пытаюсь достичь, состоит в том, чтобы создать представление из существующей таблицы, но мне нужно добавить дополнительный столбец, который будет действовать как категория данных.Как создать представление с дополнительным столбцом на основе существующих данных?

Я уже достиг этого в excel, но со всеми дополнительными формулами и данными мои файлы слишком большие. Я хотел бы создать категории в SQL, если это возможно.

Данные автоматически обновляются и содержат данные веб-трафика. Дополнительная колонка должна определить «Канал». Например;

В настоящее время существует три столбца, которые используются для указания канала, из которого поступает трафик: источник, среда и кампания. Мне нужно создать формулу, основанную на данных в каждом из этих столбцов. Например, если в кампании содержится «xx-xx», то это значение канала будет «Пример канала». Но если Source = 'example-source' AND Medium = 'example-medium', то его Channel будет 'Example Channel2'

Всего 8 каналов, и для этого, чтобы сделать это в Excel, мне понадобился один столбец 8 вложенных операторов IF, плюс дополнительный столбец с тремя вложенными операциями IF, чтобы получить то, что я хотел. Мне понадобился второй столбец, чтобы в основном вычесть некоторые данные из каналов, созданных в первом столбце канала.

Надеюсь, у меня есть смысл здесь, но, пожалуйста, простите меня, если я не буду достаточно ясным. Это имеет смысл в моем сознании, но это может быть не для кого-то другого.

Я предполагаю, что мне нужно создать представление, которое включает в себя какой-то оператор IF или CASE, но я очень новичок в SQL, поэтому любая помощь будет высоко оценена.

Большое спасибо заранее.

ответ

0

Вы бы сделать это с помощью case заявление в Excel:

select (case when campaign like '%xx-xx%' then 'Example Channel' 
      when source = 'example-source' and medium = 'example-medium' 
      then 'Example Channel2' 
      . . . 
     end) as channel 
+0

Это работает отлично :-). Это так легко, когда вы знаете, как это сделать. хе-хе. Большое спасибо за вашу помощь – user3117691

Смежные вопросы