我有一张包含三列的表格,分别是"id"、"letter"和"number"。我有一组"letter"和"number"的对应列表,需要在一次查询中获取对应的"id"。显然,最简单的解决方法是使用n个查询,其中n是列表的大小。
SELECT id FROM table WHERE number=... AND letter=...
但这需要n次查询,在我的情况下有数百万次查询,有很大的开销。以前,我只对“数字”列表进行了过滤,所以我使用了
SELECT id FROM table WHERE number = ANY(ARRAY[...])
请问是否有一些语法可以满足我的需求,类似于:
SELECT id FROM table WHERE PAIR[letter,number] = ANY(ARRAY[PAIR[...],...])
谢谢。
(l1 :: varchar,n1 :: int)
才能获取正确的类型。 - mu is too short