SELECT
a1.CID AS CID,
a1.DATAID AS DATAID,
(
select CASE
WHEN (
sum(
(
CASE
WHEN (a2.CALLRESULT = 1) THEN
1
ELSE
0
END
)
) > 0
) THEN
1
ELSE
0
END from sys_agent_cdr a2 where a1.CALLID = a2.CALLID
) AS CALLSUCC_FLAG
FROM sys_customer_record a1GROUP BY
a1.DATAID
a1.CID AS CID,
a1.DATAID AS DATAID,
(
select CASE
WHEN (
sum(
(
CASE
WHEN (a2.CALLRESULT = 1) THEN
1
ELSE
0
END
)
) > 0
) THEN
1
ELSE
0
END from sys_agent_cdr a2 where a1.CALLID = a2.CALLID
) AS CALLSUCC_FLAG
FROM sys_customer_record a1GROUP BY
a1.DATAID
a1.DATAID AS DATAID,
(select if(count(*) > 0, 1, 0)
from sys_agent_cdr a2
where a1.CALLID = a2.CALLID
and a2.CALLRESULT = 1) AS CALLSUCC_FLAG
FROM sys_customer_record a1
GROUP BY a1.DATAID
a1.DATAID AS DATAID,
(select count(*)
from (select *
from sys_agent_cdr a2
where a1.CALLID = a2.CALLID
and a2.CALLRESULT = 1 limit 1)) AS CALLSUCC_FLAG
FROM sys_customer_record a1
GROUP BY a1.DATAID
explain SELECT
a1.CID AS CID,
a1.DATAID AS DATAID,
(
select CASE
WHEN (
sum(
(
CASE
WHEN (a2.CALLRESULT = 1) THEN
1
ELSE
0
END
)
) > 0
) THEN
1
ELSE
0
END from sys_agent_cdr a2 where a1.CALLID = a2.CALLID
) AS CALLSUCC_FLAG
FROM sys_customer_record a1GROUP BY
a1.DATAID
以供分析。