【发布时间】:2020-07-02 23:04:06
【问题描述】:
我试图弄清楚如何进行查询,当大多数列与查询匹配时,该查询将返回行。 理想情况下,查询应该与 PostgreSQL 兼容。 (如果它足够基本,我可以在 SQLite 中本地测试它,那将是非常棒的!但它不是必须的。)
我在这里找到了一个类似的线程,但查询只与 Oracle 的数据库兼容。
关于如何最有效地实现这一点有什么想法吗?
示例表:
col1|col2|col3
A | B | B
Y | Y | Y
X | B | X
Y | B | B
查询将查找 col1 = A 和 col2 = B 和 col3 = B 的列。
我想要得到的输出:
col1|col2|col3
A | B | B
Y | B | B
为 SQLite 创建表架构
CREATE TABLE "t" (
"col1" TEXT,
"col2" TEXT,
"col3" TEXT
);
样本数据:
INSERT INTO 't' (col1, col2, col3)
VALUES ('A', 'B', 'B'),
('Y', 'B', 'B'),
('X', 'B', 'X'),
('A', 'B', 'X'),
('Y', 'Y', 'Y')
【问题讨论】:
-
请在您的问题中添加示例数据。
-
请相应地阅读sql tag info和edit中的前几段。
-
我不确定您是如何获得输出的。您是否正在查看
ORDER BY的匹配数? -
为什么要在结果中出现
Y | Y | Y和X | B | X行?他们不满足条件 9/10? -
是的,对不起,他们不应该在那里。顺序很重要。
标签: mysql sql database postgresql sqlite