我有一个存储RDF三元组的表:
三元组(triple_id,sub_id,pre_id,obj_id)
方法(我需要写)将接收与pre_id值对应的数字数组.我想选择所有sub_id值,这些值对于传入的数组中的所有pre_id都有相应的pre_id.
例如,如果我传入了一个pre_id值...让我们调用preId中传递的值,我会这样做:
从triples中选择sub_id,其中pre_id = preId;
但是,由于我有多个pre_id值,我想继续迭代pre_id值,并且只保留sub_id值对应于具有两者的"三元组"记录.
例如,图像有五条记录:
triples(1, 34,65,23)
triples(2, 31,35,28)
triples(3, 32,32,19)
triples(4, 12,65,28)
triples(5, 76,32,34)
Run Code Online (Sandbox Code Playgroud)
如果我传入一个pre_id值数组[65,32],那么我想选择第一,第三,第四和第五条记录.
我该怎么做?
这可能不适用于每个数据库,但关键字in可以执行此操作:
select sub_id from triples where pre_id in (65, 32)
Run Code Online (Sandbox Code Playgroud)