我有服务台数据库(SQL Server 2008),有两个表:
联系人: Contact_ID,Contact_FullName
票证: Ticket_ID,Title,Open_Time,Contact_ID
我发现那些不要求帮助自过去6个月以及&#34; AX&#34; <的人(Contact_ID)< / strong>在他的 contact_ID 。
答案 0 :(得分:1)
您可以使用聚合查询执行此操作:
select t.contactid
from ticket t
where t.contactid like '%AX%'
group by t.contactid
having max(opentime) < dateadd(month, -6, getdate());
如果您需要联系信息,则可以使用join
,exists
或in
从该表中提取。
答案 1 :(得分:0)
尝试此查询:
SELECT contact_id, contact_name
FROM contact
WHERE contact_id LIKE '%AX%'
AND contact_id NOT IN
(
SELECT DISTINCT contact_id
FROM ticket
WHERE open_time >= DATEADD(month, -6, GETDATE())
)
GROUP BY contact_id, contact_name