繁体   English   中英

计数记录没有给出正确的数字

[英]count records is not giving the right number

当我键入以下查询时

SELECT
    COUNT(*) AS COUNT
FROM
    OP_table OP
WHERE
    OP.TARGET_ID= 4330000000000369;

我得到55分

当我尝试在连接中使用它时

SELECT
    TS.TARGET_ID, T.TARGET_NAME, T.TARGET_PUBLIC_NAME, count( DISTINCT OP.OP_ID) AS OP_COUNT
FROM
    TS_table TS
INNER jOIN
     T_table T
ON
    T.TARGET_ID = TS.TARGET_ID
OUTER JOIN
    OP_TABLE OP
ON
    OP.TARGET_ID = T.TARGET_ID
WHERE
    TS.TARGET_SERVICE_ID = number

然后我明白了

TARGET_ID,    TARGET_NAME,    TARGET_PUBLIC_NAME,    OP_COUNT
number,       target name,    Ebook Central History  33781

计数为33781.我想使用第二个函数结构,但得到正确的55个计数

由于某种原因,它获得了Target_id的计数而不是Target_service ID

我也注意到我输入以下内容

SELECT
    COUNT(*) AS COUNT
FROM
    KB_OBJECT_PORTFOLIOS OP
WHERE
    OP.TARGET_ID=4330000000000383;

该数字对应的位置将产生结果33781。

在加入的某个地方,它摆脱了目标ID 4330000000000369并使用不同的目标ID 4330000000000383

好吧,我从愚蠢的列名OP.target_ID = TS.target_service_id而不是TS.target_ID混淆了......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM