Redshift联邦MySQL查询含保留字列名执行失败求助
解决Redshift访问MySQL保留字列的问题
当通过Redshift远程连接MySQL数据库,查询包含保留字列名(如year_month)的表时,直接用MySQL的反引号转义会失效——因为Redshift本身采用双引号作为标识符转义符。以下是可行的解决方法:
使用Redshift支持的双引号包裹保留字列名,执行SQL:
select id, "year_month" from updoc_mysql.apsetup;若上述方法仍失败,先刷新外部表元数据,确保Redshift正确同步MySQL表结构:
REFRESH EXTERNAL TABLE updoc_mysql.apsetup;之后再执行带双引号的查询语句。
备选方案:给保留字列名添加别名,绕过保留字限制:
select id, "year_month" as report_month from updoc_mysql.apsetup;
内容的提问来源于stack exchange,提问作者Shanthi
相关产品推荐
相关产品推荐

