在Redshift中,当我们将结果导入TABLEAU时,我们试图为从查询返回的列赋予更有意义的别名,问题是RedShift将所有字母都转换为小写字母,即从“ Event Date”开始”,然后返回“事件日期”,关于如何解决这一问题以保持别名的任何想法?
答案 0 :(得分:1)
否,您无法在Redshift中执行此操作。所有列都是小写。
您只能使用来强制使用大写
set describe_field_name_in_uppercase to on;
也请参见此处的示例https://docs.aws.amazon.com/redshift/latest/dg/r_names.html,您可以看到大写字符返回为小写。并说“标识符不区分大小写,并在数据库中折叠为小写”
您当然可以重命名该列以在Tableau中包含大写字母。
答案 1 :(得分:0)
您需要输入
app.js:86 Uncaught TypeError: Cannot read property 'replace' of undefined
at Object.addListItem (app.js:86)
at HTMLButtonElement.ctrlAddItem (app.js:124)
在Tableau的初始SQL中。
答案 2 :(得分:-1)
我正在查看AWS文档中的redshift,并且 INTCAP 函数可以解决您的用例
供参考=> https://docs.aws.amazon.com/redshift/latest/dg/r_INITCAP.html
简要说明(已复制)
INITCAP函数使字符串中每个单词的第一个字母大写,而所有后续字母都变为(或左移)小写。因此,重要的是要了解哪些字符(空格字符除外)用作单词分隔符。单词分隔符是任何非字母数字的字符,包括标点符号,符号和控制字符。以下所有字符都是单词分隔符:
! “#$%&'()* +,-。/:; <=>?@ [\] ^ _ _ {{}〜
在您的情况下,您已将字段名称声明为event_date,它将转换为Event_Date。
接下来,您可以使用 REPLACE 函数替换下划线'_'
供参考=> https://docs.aws.amazon.com/redshift/latest/dg/r_REPLACE.html