我在MySQL中有几个(超过20个)表格,这些表格描述了许多不同级别(颜色,位置等)上的项目。以下是“table01”的示例MySQL:选择一个匹配多行的项目
+----+----------+
| ID | property |
+----+----------+
| 1 | A |
| 1 | B |
| 2 | C |
| 2 | B |
+----+----------+
现在我想要搜索符合多个条件的项目。以下查询正常工作
SELECT
table01.ID, table01.property, table02.property, table03.property [...]
FROM
table01
LEFT JOIN table02 ON table02.ID = table01.ID
LEFT JOIN table03 ON table03.ID = table01.ID
[...]
WHERE
table01.property = "A"
and table02.property = "B"
and table03.property = "A"
[...]
继承人我的问题。我想要搜索与某个表中的几个属性匹配的项目。例如(这个查询显然不起作用)
table01.property = "A" AND table01.property = "B"
我不知道如何实现,因为信息存储在多行中。
有什么建议吗?数据库非常庞大(每个表有数千个条目),并且不时添加新的行。我应该通过PHP做一些处理,还是有纯粹的MySQL解决方案?
问题需要更多信息。查询的属性是静态的吗?或者你想为用户定义的属性创建动态查询? –
数据库结构是静态的,表和它们的列(名称)保持不变。项目和属性不时添加 –
我的意思是查询本身是静态的吗?你是否一直在查询相同的属性? –