首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查找SQL中的错误并解释SQL代码的含义

查找SQL中的错误并解释SQL代码的含义
EN

Database Administration用户
提问于 2022-03-27 08:17:28
回答 1查看 67关注 0票数 -4

在下面的SQL脚本中查找所有5个错误,并解释脚本试图做什么

代码语言:javascript
复制
select
A.BIZ_DT,
A.ACTL_PARENT_SVC_NUM,
A.DIRCTN_IND,
A.BUS_STOP_CD,
A.BUS_STOP_ARRVL_TM,
A.OPR_ID_NUM,
A.REG_NUM,
A.BUS_REGISTER_NO,
A.TRIP_NUM,
B.PSGR_CC_CNT,
sum(A.BOARD_CNT) Board,
sum(A.ALIGHT_CNT) Alight,
A-B NetBoard
NetBoard/B.PSGR_CC_CNT as Utilization 
from PLAP_VIEW_PTQ.V_OD_NET_ON_BOARD_SEP as A
LEFT JOIN PLAP_TWM_USERSPACE_PTQ.BUs_fleet_2022 AS B
A.BUS_REGISTER_NO=B.BUS_REGISTER_NO AND A.OPR_ID_NUM=B.OPR_ID_NUM
where A.SVC_NUM in (147)
where A.BUS_STOP_CD in(63199)
and A.BIZ_DT='2022-01-04' and '2022-01-09'
group 1,2,3,4,5,6,7,8,9,10

我发现的错误是,A.SVC_Num写错了,

“2022-01-09”写错了,而丢失的and网板也是错误的.

我仍然无法找到其余的2个错误,并解释上面的SQL代码实际上意味着什么。有人能帮我解释一下。谢谢!

EN

回答 1

Database Administration用户

发布于 2022-03-27 11:15:03

我的第一个建议是缩进代码以使其变得可读性:

代码语言:javascript
复制
SELECT A.BIZ_DT,
       A.ACTL_PARENT_SVC_NUM,
       A.DIRCTN_IND,
       A.BUS_STOP_CD,
       A.BUS_STOP_ARRVL_TM,
       A.OPR_ID_NUM,
       A.REG_NUM,
       A.BUS_REGISTER_NO,
       A.TRIP_NUM,
       B.PSGR_CC_CNT,
       sum(A.BOARD_CNT) Board,
       sum(A.ALIGHT_CNT) Alight,

       A-B NetBoard
       NetBoard/B.PSGR_CC_CNT as Utilization 

FROM PLAP_VIEW_PTQ.V_OD_NET_ON_BOARD_SEP as A
LEFT JOIN PLAP_TWM_USERSPACE_PTQ.BUs_fleet_2022 AS B

A.BUS_REGISTER_NO=B.BUS_REGISTER_NO AND A.OPR_ID_NUM=B.OPR_ID_NUM

where A.SVC_NUM in (147)

where A.BUS_STOP_CD in(63199)

and A.BIZ_DT='2022-01-04' and '2022-01-09'

group 1,2,3,4,5,6,7,8,9,10
  1. A和B代表什么,表中是否有像这样命名的列?我想不是,这是第一个错误
  2. 你也少了一个",“。
  3. 在计算中不能使用别名Netboard
  4. 左联接需要一个ON谓词
  5. 您正在重复WHERE子句
  6. 这是一组一组,没有一组

如果没有关于所涉及的表格的信息,就无法判断组BY是否正确。

那是6个错误

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/310219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档