我在甲骨文10g中尝试一个查询。事情是这样的:
SELECT
*
FROM
h2h_reg reg,
h2h_cat_estatus est
WHERE
reg.FECH_APLICACION = SYSDATE
AND REG.ID_EST = EST.ID_ESTATUS
AND est.tipo_estatus = "X";所以它运行得很平稳,但是当我尝试添加一个组时:
SELECT
reg.id_arch,
reg.id_prod
FROM
h2h_reg reg,
h2h_cat_estatus est
WHERE
reg.FECH_APLICACION = SYSDATE
AND reg.id_est = est.id_estatus
AND EST.TIPO_ESTATUS = "X"
GROUP BY
reg.id_arch,
reg.id_prod;我收到下一条消息:
ora-06553请-306个调用“ogc_x”的错误数目或类型的参数
有人知道我的问题出了什么问题吗?
发布于 2012-12-03 16:50:13
您在"X"上使用了双引号。
这应该是'X'。
X对象是MDSYS "ogc_x“中的一个函数,所以当您说est.tipo_estatus = "X"而不是正确的est.tipo_estatus = 'X'时,它会被翻译成est.tipo_estatus = mdsys.ogc_x (因为"”作为标识符,所以"X“与键入X相同),当然会失败。
发布于 2012-12-03 16:43:48
尝试使用DISTINCT:
SELECT DISTINCT reg.id_arch, reg.id_prod
FROM h2h_reg reg, h2h_cat_estatus est
WHERE reg.FECH_APLICACION = SYSDATE
AND reg.id_est = est.id_estatus
AND est.tipo_estatus = 'X'发布于 2017-09-15 06:34:11
我发现产生这个错误是因为我使用Oracle保留词来命名我的一些列,例如日期、时间、注释等。一旦我重新命名了这些列,问题就消失了。
https://stackoverflow.com/questions/13687766
复制相似问题