使用新行字符redshift将数据卸载到s3

时间:2018-06-15 07:25:17

标签: sql database amazon-s3 amazon-redshift

我正在尝试使用unload命令将表从redshift导出到s3 命令:

if (_secondaryItems != null && _secondaryItems.Count > 0 **&& element.ToolbarItems.FirstOrDefault(e => e.ClassId == "menu") == null**)
            {
                element.ToolbarItems.Add(new ToolbarItem()
                {
                    Order = ToolbarItemOrder.Primary,
                    Icon = "more.png",
                    Priority = 1,
                    Command = new Command(() =>
                    {
                        ToolClicked();
                    })**,
                    ClassId = "menu"**
                });
            }

我的表中的一个字段包含新行,因此生成的csv分为两行

有没有办法将新行替换为\ n或添加行尾字符

1 个答案:

答案 0 :(得分:1)

您应该删除escape,只需尝试ADDQUOTE选项,它就会生成正确的CSV。由于""会指示您的CSV读者将\n视为措辞,而不是newline

UNLOAD ('SELECT * FROM table where id = 4') 
TO 's3://path/temp/table1'
credentials aws_access_key_id="ahsvdgsfadhsagdffjh;
    aws_secret_access_key=ahgsdasdhgsahdgsahdgsahdgsahgsa' 
delimiter '|' 
NULL AS '\\N' ADDQUOTE;