可以使用SQL语句中的交集(INTERSECT)来描述两个人在同一段时间内同一地点住宿过的情况。具体步骤如下:
假设有两个表格,一个是"person"表格,包含人员的信息,如姓名、ID等;另一个是"accommodation"表格,包含住宿信息,如住宿时间、地点等。
- 分别在"person"和"accommodation"表格中筛选出两个人员的记录和住宿记录,并将它们作为子查询。
例如,假设要查询ID为001和002的两个人员在2022年1月1日到2022年1月3日期间住宿的情况,可以使用以下语句:
SELECT accommodation.location
FROM accommodation
WHERE accommodation.check_in_date >= '2022-01-01'
AND accommodation.check_out_date <= '2022-01-03'
AND accommodation.person_id IN (SELECT person.id FROM person WHERE person.id IN ('001', '002'))