Mysql 基于输入数组进行查询,并以相同的顺序获得相同的结果

Mysql 基于输入数组进行查询,并以相同的顺序获得相同的结果,mysql,sql,mysqli,mysql-workbench,Mysql,Sql,Mysqli,Mysql Workbench,我想获取特定uuid的场景id数组的活动状态;例如,输入将是(1,2,3)中的scene_id,uuid=2,因此它应该按照传递的scene_id的相同顺序返回(1,0,1) scene_id uuid active 1 2 1 3 2 1 5 2 1 7 2 1 1 3 1 2 3 1 5 3 1 5 4

我想获取特定uuid的场景id数组的活动状态;例如,输入将是(1,2,3)中的scene_id,uuid=2,因此它应该按照传递的scene_id的相同顺序返回(1,0,1)

scene_id  uuid active
1           2   1
3           2   1
5           2   1
7           2   1
1           3   1
2           3   1
5           3   1
5           4   1
1           4   1
1           8   0
我试过:

select active from likes where scene_id in (1,2,3) and uuid=2
但它返回(1,1);它忽略0,因为没有场景_id=2和uuid=2
如果您需要更多的澄清,请让我知道

如果可以将特定的uuid记录插入到新表中,则更容易:

insert into newTable
    select scene_id, uid
        from likes
        where scene_id in(1,2,3) and uuid=2
那么您的查询应该是这样的:

select ifNull(active, 0) as r 
from
    likes
        left join newTable on likes.scene_id=newTable.sceneId and likes.uuid=newTable.uuid

您还可以指定最后一个查询的特定顺序。

示例应该返回(1,0,1),而不是(1,1,0),对吗?哦,对了!我会改正的谢谢!