2015-05-20 3 views
0

Я пытаюсь сделать вычисляемый столбец в Spotfire, где определенное значение должно присутствовать в столбце другой таблицы перед назначением нового значения.spotfire: поиск столбца другой таблицы

Мое выражение выглядит следующим образом:

If(Find('Specific value first table',**'present in second table'**) is Null, 0, 'New Value') 

Я понятия не имею, как привлечь эту вторую таблицу в моем поиске, не у кого есть какие-либо идеи?

Заранее благодарен!

ответ

2

Вы не сможете ссылаться на другую таблицу при создании расчетного столбца. Однако, я думаю, мы все равно можем решить вашу проблему.

Что вы хотите сделать, это попытаться вставить столбцы из другой таблицы, присоединившись к столбцу, в котором хранятся значения, которые вы ищете, а затем проверьте, существует ли он с простым вычисленным столбцом. В вашем случае вы хотите установить нулевые значения в качестве нового значения и сохранить существующие значения. Что-то вроде case when [new_column] is null then 'new_value' else [new_column] end.

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

How to Search Table1 Column Value is present in Table2 Column or not in spotfire?

  1. Создание вычисляемого столбца в Table2 имени EXISTS с выражением TRUE.
  2. Перейдите в раздел «Вставка»> «Столбцы» и выберите, чтобы добавить столбцы в таблицу1 из таблицы2.
  3. Match на первичном ключе (в моем случае в колонке «ПИСЬМО»)
  4. Выберите EXISTS из флажков, чтобы добавить и использовать метод Объединить Left single match для того, чтобы сохранить ваше количество записей и нажмите Готово.
  5. Теперь у вас есть столбец с именем EXISTS в вашей таблице1, который имеет значение null или TRUE. Если вы хотите, чтобы он был TRUE или FALSE, вы можете создать на нем вычисляемый столбец, который будет оценивать, является ли он NULL или не так: [EXISTS] Is Not Null. Я назвал свой «EXISTS_TF» в приведенном ниже примере.

Мои данные и полученные столбцы после выше:

spotfire_example_1

Вы должны теперь быть в состоянии фильтровать и делать расчеты, основанные на новой колонке (ов).

+0

Большое спасибо! Мне потребовалось некоторое время, чтобы заставить его работать, потому что мой примитивный ключ также является расчетной колонкой. Поэтому мне нужно было сначала заморозить столбец. Но теперь он работает отлично. Большой! – Pia

+3

Добро пожаловать. Рад, что вы можете найти помощь здесь. Одной из целей Stack Exchange является то, что вопросы и ответы остаются чистыми и незагроможденными. Чтобы выразить благодарность, если вы считаете, что это заслужено, вы можете также подправить ответы и полезные комментарии по вашему вопросу. Принятие ответа, нажав на галочку, позволяет указать, какой ответ вы считаете лучшим решением. Вы можете изменить свой выбор или просто отключить ответ в любое время. Подробнее [здесь] (http://stackoverflow.com/help/someone-answers) – clesiemo3

+2

@Pia, просто чтобы указать, что Calculated Columns, созданные с помощью преобразований (либо при первом добавлении таблицы данных, либо в меню Insert >> Transformation) обрабатываются как «импортированные» типы столбцов вместо «вычисленных». это означает, что, хотя вы не можете изменить выражение, вы сможете использовать столбец в качестве столбца первичного ключа для других преобразований. Конечно, вы всегда можете Файл >> Заменить таблицу данных и использовать исходный источник, а затем повторно применить любые преобразования, если вам нужно изменить выражение. – niko

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