Complaint_status表:投诉的多行
id complaint_id status_type status_value
1 11 2 0
2 11 2 2
3 11 2 1
4 11 2 2试图让min(id)拥有status_type=2和status_value=2,但显示null时,必须使用case语句来做其他事情。
SELECT c3.id AS Ticket_id,
CASE
WHEN cs.status_value=2 THEN cs.created_at
ELSE NULL
END AS Closure_date
FROM complaint c3
INNER JOIN complaint_status cs ON cs.complaint_id=c3.id
WHERE cs.id IN
(SELECT min(id)
FROM complaint3_status
WHERE complaint_id=c3.id
AND status_type=2)
AND c3.id IN(11)发布于 2015-01-04 10:37:37
下面是给出整个行的一个方法:
select cs.*
from complaint_status cs
where status_type = 2 and status_value = 2
order by id asc
limit 1;如果需要的话,你可以只使用select id。我不知道case与这个查询有什么关系。
https://stackoverflow.com/questions/27761788
复制相似问题