【问题标题】:How to make views out of partitions in Sybase如何在 Sybase 中从分区中创建视图
【发布时间】:2014-05-21 13:52:13
【问题描述】:

我使用的是 Sybase 12.5.3,有一个包含 1200 万行的表,没有任何标识/id 列。我想将表中的数据并行 bcp 到 12 个不同的文件。

  • 发现只有在表上创建视图然后并行运行 bcp 才能做到这一点(参考:link-February 2012 question)
  • 我的表也有分区,我只有分区 ID(不是分区名称)
  • 有什么方法可以让我使用分区或使用 sybase 中 Oracle 的 rownum 的对应物来制作 12 个 100 万行的不同视图

非常感谢您的帮助!

【问题讨论】:

  • 您是否有理由不想将bcp 排除在分区之外? Sybase 中没有 rownum 对应项,因此如果不使用 -F-L,它将依赖于您在数据中具有一些价值,您可以根据这些价值将数据分成大约 1/12 的数据来创建意见。每个文件可能很难精确到 100 万行。
  • -F 和 -L 选项在并行 bcp out 中无法按预期工作。参考:link - 最后一个问题及其答案。我也只想要大约 100 万行而不是严格。我不知道如何从分区中退出,如果有什么办法,请告诉我!
  • 您好,我注意到您尚未接受我的回答。有关更多信息,请参阅此处的页面:stackoverflow.com/help/someone-answers
  • 这几天有点忙!感谢您的帮助,它为我节省了很多时间! :)

标签: sybase sap-ase


【解决方案1】:

bcp出的分区,可以参考分区名或分区号。

bcp mydb..bigtable:1 out file1 -Pmypassword -c &
bcp mydb..bigtable:2 out file2 -Pmypassword -c &

这将从bigtable的分区1和2创建一个字符(明文)输出

尽管有很多文档 concentrates on importing data,但用于导出的系统税通常非常接近。

或者,您可以根据表中的值创建视图。假设有一列包含某种可用于划分数据的范围(或分类)值,您可以使用以下内容:

create view mytable_VIEW_1 as
select * from bigtable
where myColumn < someValue1

create view mytable_VIEW_2 as
select * from bigtable
where myColumn between someValue2 and someValue3

创建视图后,您可以轻松地bcp 退出它们。

【讨论】:

    猜你喜欢
    • 2011-06-08
    • 1970-01-01
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    • 2021-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多