1

我正在尝试从相同架构的 2 个不同表创建新视图。这是我的查询,如果我遗漏了什么,请告诉我。当我检查语法并对其进行测试时,会引发 00933 错误。

CREATE OR REPLACE FORCE VIEW "APDA"."countview" 
        (
        "dealidint", "companyidint", "nametxt", "county", "street", 
        "state", "city", "zip", "geocodelatdec", "geocodelongdec", 
        "volidint", "reportdate", "vehicletotalint", "salvagetotalint"
         )
AS 

SELECT a."dealidint",
          a."companyidint",
          a."nametxt",
          a."county",
          a."street",
          a."state",
          a."city",
          a."zip",
          a."geocodelatdec",
          a."geocodelongdec",
          c."dealervolumeidint",
          c."reportdate",
          c."vehicletotalint",
          c."salvagetotalint"

     FROM "APDA"."company" a
     JOIN
          "APDA"."volume" c
     ON   c."dealidint" = a."dealidint";
4

4 回答 4

0

我看不出原因。我注意到的唯一可疑之处是两个空白行。在 SQLPlus 中,我认为这些不会导致此错误,但它们会导致命令被误解。

我的建议是: - 尝试不同的工具。如果您在 SQL Developer 中遇到错误,请在 SQLPlus 中尝试。它不一定有效,但您可能会得到不同的反馈。- 将其简化为有效的最小语句,然后一次添加一个元素,直到发生错误

于 2018-07-21T00:06:54.397 回答
0

感谢所有您回答我的问题的人。我分享的是一个具有相同语法的精简查询。查询很好,但我的实际查询在连接上有一个额外的字符。这就像 - “APDA”。“vvolume”。

之后,我能够创建视图。

再次感谢。

于 2018-07-26T17:58:25.003 回答
0

列名“volidint”在您的以下选择查询中不可用。请使用“As”进行更正。

CREATE OR REPLACE FORCE VIEW "APDA"."countview" 
        (
        "dealidint", "companyidint", "nametxt", "county", "street", 
        "state", "city", "zip", "geocodelatdec", "geocodelongdec", 
        "volidint", "reportdate", "vehicletotalint", "salvagetotalint"
         )
AS 

SELECT a."dealidint",
          a."companyidint",
          a."nametxt",
          a."county",
          a."street",
          a."state",
          a."city",
          a."zip",
          a."geocodelatdec",
          a."geocodelongdec",
          c."dealervolumeidint" as "volidint",
          c."reportdate",
          c."vehicletotalint",
          c."salvagetotalint"

     FROM "APDA"."company" a
     JOIN
          "APDA"."volume" c
     ON   c."dealidint" = a."dealidint";
于 2018-07-23T07:18:50.820 回答
0

您的列名“volidint”不在所选列中,我看到“dealervolumeidint”选择与“volidint”。

于 2018-07-21T09:49:25.983 回答