ORA-00933使用'查询错误表

时间:2016-05-18 19:17:25

标签: sql oracle

我遇到了ORA-00933: SQL command not properly ended错误。我正在做的是查询我从With查询构建的表。我一直在梳理Stack,尝试用我能找到的每个正确回答的问题解决这个问题,但我仍然遇到错误。它确实很小,很容易修复。在这一点上,它超越了我。第二个select语句的行发生错误:

;WITH sums 
     AS (SELECT a.client_number_id                     AS Client_Number_ID, 
                Count(Decode(a.sub_type_code, 'A', 1)) AS Applications, 
                Count(Decode(a.sub_type_code, 'S', 1)) AS License, 
                Count(Decode(a.sub_type_code, 'L', 1)) AS Lease 
         FROM   mta_spatial.mta_acquired_tenure_svw a 
         WHERE  a.tenure_type_description = 'Coal' 
         GROUP  BY a.client_number_id) 
SELECT client_number_id, 
       applications, 
       license, 
       lease, 
       applications + license + lease AS 'GrandTotal' 
FROM   sums; 

3 个答案:

答案 0 :(得分:4)

applications + license + lease AS 'GrandTotal' 

应该是

applications + license + lease AS "GrandTotal" 
  • 引用是字符串
  • 字段名称的双引号。

答案 1 :(得分:2)

将别名括在双引号中会使其区分大小写。如果您希望别名不区分大小写,请在不带引号的情况下编写它。 Oracle默认情况下将此类情况视为大写。因此,Grandtotal,GRANDTOTAL, grandtotal将全部返回所需的结果。

  <ul>
     <li ng-repeat="person in data">
        <table>
          <thead>{{person.name}}</thead>
          <tbody>
           <tr ng-repeat="row in person.entries">
             <test-dir data="row"></test-dir>
           </tr>
          </tbody>
        </table>
    </li>
  </ul>

app.directive("testDir", function(){
    return {
        restrict: 'EA',
        scope: {
          data: '='
        },
        template: "<td>{{data}}</td>"
    };
});

答案 2 :(得分:0)

感谢大家的贡献。当我在&#39; WITH&#39;之前删除分号时,我解决了这个问题。声明。我从另一个堆栈线程中借用了查询

To calculate sum() two alias named columns - in sql

并将其修改为我自己使用。他们使用了分号,所以我没想过要删除它。我不确定他们为什么要从那里开始。这是我第一次尝试使用&#39; WITH&#39;子句。