Конечно, вы можете выбирать столбцы по номеру столбца, но это может легко стать кошмаром, если вы вообще что-то измените. Я обнаружил, что имена столбцов гораздо более стабильны, и поэтому я рекомендую следующее решение:
Обновить mycol, когда он находится между двумя известными столбцами
Вы можете использовать ..
, чтобы указать начальные или конечные столбцы (или промежуточные столбцы). Вот как это сработает, если вы захотите изменить значение «MyCol» на «updatedvalue».
aliasAfter = FOREACH aliasBefore GENERATE
.. colBeforeMyCol, updatedvalue, colAfterMyCol ..;