Quotation Mark Rules Applied Consistently

In the previous release, SAQL handled quotation marks inconsistently for projected labels as input for order, filter, group and alias.
Important

Important

This change may break existing SAQL code. Update existing code to use this new behavior.

These quotation mark rules are now applied consistently in all cases.
  • Strings use double quotation marks.
  • Identifiers use single quotation marks or no quotation marks.
This example uses valid syntax:
accounts = load "0Fbxx000000002qCAA/0Fcxx000000002WCAQ";
opps = load "0Fbaa000000002qCAA/0Fcaa000000002WCAQ";
c = group accounts by 'Year', opps by 'Year';
d = foreach c generate opps.Year as 'Year';
e = filter d by Year == "2002"; 
In the following examples, the code in bold throws an error:
accounts = load "0Fbxx000000002qCAA/0Fcxx000000002WCAQ";
opps = load "0Fbaa000000002qCAA/0Fcaa000000002WCAQ";
c = group accounts by "Year", opps by "Year";
d = foreach c generate opps.Year as 'Year';
e = filter d by Year == "2002";
accounts = load "0Fbxx000000002qCAA/0Fcxx000000002WCAQ";
opps = load "0Fbaa000000002qCAA/0Fcaa000000002WCAQ";
c = group accounts by Year, opps by Year;
d = foreach c generate opps."Year" as Year;
e = filter d by Year == "2002";
a = load "0Fbyy000000002qCAA/0Fcuu000000002WCAQ";
a = filter a by "year" == "1970";
a = group a by 'year';
a = foreach a generate 'year', count() as 'count';
a = load "0Fbxx000000002qCCC/0Fcxx000000002WCtr";
a = group a by year;
a = foreach a generate year as "year", count() as "count";