物体
我的尝试:
SELECT o.name
FROM link l
INNER JOIN object o ON o.id = l.o_id
INNER JOIN attr a ON a.id = l.a_id
WHERE a.description = "attr1"
AND a.description = "attr2"
显然不返回任何内容,因为在 JOIN 之后,这些是唯一的行。使用 OR 而不是 AND,它会同时返回 obj1 和 obj2。有没有办法在 SQL 内部执行此操作,而不必稍后在代码中进行过滤?我觉得通过 SQL 来完成,因此在数据库中将使我的代码更快。
o.id = 0
SELECT
o.name AS object_name,
a.description AS attribute_description
FROM
object o
JOIN
link l ON o.id = l.o_id
JOIN
attr a ON l.a_id = a.id
WHERE
o.id = 0;