我在Access中有一个表,其中有多个具有相同ID的记录,它们彼此对应。
我想查找具有特定日期值的某些记录。但是,我想要所有相应的信息与该ID(即具有相同ID的所有其他记录)。我尝试过这样的事情:
HTTP ERROR: 503
Problem accessing /. Reason:
Service Unavailable
Powered by Jetty://
和
SELECT *
FROM myTable
WHERE LEFT(Field1,7) = '2016-11' IN (SELECT ID
FROM myTable
GROUP BY ID
HAVING COUNT(*)>1)
这些都没有给我正确的输出。我想我可能需要某种类型的For循环,但是在使用SQL时没有多少经验。这样我就可以循环遍历那个日期部分返回的所有ID。有什么建议?我会把表格格式放在帖子中,但由于某种原因,表格格式不适合我。沮丧是真的!
哈哈,提前感谢您抽出时间来阅读我的问题。非常感谢。修改
这是我的表格的视觉效果:
我想选择11月份发生的所有记录,但也要获取相应的信息(即与11月记录具有相同ID号的记录)。
答案 0 :(得分:1)
考虑在子查询中添加WHERE
条件:
SELECT *
FROM myTable
WHERE ID IN (SELECT ID FROM myTable
WHERE LEFT(Field1, 7) = '2016-11');
要避免使用子查询,请尝试INNER JOIN
对ID
过滤后的自联接进行SELECT myTable.*
FROM myTable
INNER JOIN
(SELECT ID FROM myTable
WHERE LEFT(Field1, 7) = '2016-11') sub
ON sub.ID = myTable.ID
:
this