sql查询语句,查询语句

假如我在某张表中得出5条数据分别是:
select PackageDishId from TDishPackage where dishid=3705 and StatusFlag=1
得出(571,580,671,571,571)
然后在根据得出来的5个ID去另一张表做查询:
select * from VDishList where DishId in(571,580,671,571,571)
问题来了,按道理应该是得出5条数据,为什么数据查询出来只有3条?我想看到5条,这能做到的吗???

那肯定就是只有3条符合查询条件,如果你想看到5条,那就用 left join或right join

你的另一个表符合的只有三条数据。