如何将字段名称分配给 AWS Athena SQL 中的 SQL 计数
How to assign a field name to an SQL Count in AWS Athena SQL
我对 Athena 还是个新手。我想我的数据库定义正确,如下例 1 所示。但是,当我 运行 进行计数查询时,得到的结果与我预期的不同。
示例 1:工作正常,但计数称为“_col3”
SELECT ticker, timestampmonth, timestampday, count(*) FROM "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
结果:
例2:语法错误
SELECT ticker, timestampmonth, timestampday, count(*) as 'countperday' FROM "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
当我单击“运行 查询”时,此查询显示语法错误:
不要对标识符使用单引号。它们仅适用于文字字符串。如果需要引用标识符,请使用双引号;但在这里,你甚至不需要引用它,因为它不包含特殊字符。
所以:
select ticker, timestampmonth, timestampday, count(*) as countperday
from "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
Redshift 默认将标识符折叠为小写。这意味着您甚至不需要在 from
子句中引用模式和 table 名称(因为它们都是小写)。
我对 Athena 还是个新手。我想我的数据库定义正确,如下例 1 所示。但是,当我 运行 进行计数查询时,得到的结果与我预期的不同。
示例 1:工作正常,但计数称为“_col3”
SELECT ticker, timestampmonth, timestampday, count(*) FROM "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
结果:
例2:语法错误
SELECT ticker, timestampmonth, timestampday, count(*) as 'countperday' FROM "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
当我单击“运行 查询”时,此查询显示语法错误:
不要对标识符使用单引号。它们仅适用于文字字符串。如果需要引用标识符,请使用双引号;但在这里,你甚至不需要引用它,因为它不包含特殊字符。
所以:
select ticker, timestampmonth, timestampday, count(*) as countperday
from "relatixcurrdayjson"."currday"
where ticker = 'TQQQ'
group by ticker, timestampmonth, timestampday
order by ticker, timestampmonth, timestampday
Redshift 默认将标识符折叠为小写。这意味着您甚至不需要在 from
子句中引用模式和 table 名称(因为它们都是小写)。