[英]Only show result of sql query on database table1 if there is a value in table 2
[英]Query an articles table and get result only if the value of another table is X
我有一个带有唯一ID,一个TABLE值和一个文本字段的“文章”表:
文章
ID | 表格| 文本
019281 | 食物| 新鲜食物等等
92811 | 食物| 罐头食品等等
21192 | 布| 羊毛布等等
4392 | 布| 轻布等等
然后我有表:
餐饮
ID | 储存| VALUEX | 有价值
019281 | B1 | 1 | 9
92811 | B2 | 4 | 4
21192 | C1 | 8 | 1个
和
布
ID | 储存| VALUEX | 有价值
21192 | C1 | 8 | 1个
4392 | C1 | 2 | 3
我尝试了INNER JOIN,但它正在杀死我的MySQL。 也许是错的,我很笨拙。
SELECT * FROM food, cloth LEFT OUTER JOIN articles ON articles.text LIKE "%QUERY%"
现在,我制作了一个脚本,该脚本在ARTICLES中搜索TEXT,如果它是LIKE%QUERY%,则foreach循环,其中table = article.table。 我想从选择具有低valuex的项目中过滤掉,或者从每个具有articles.text匹配的表中创建一个新的项目虚拟表,因此请按valuex对其进行排序 。
SELECT *
FROM articles a
LEFT OUTER JOIN food f on f.id = a.id
LEFT OUTER JOIN cloth c c.id = a.id
where articles.text LIKE "%QUERY%" and f.valuex > 1 and c.valuex > 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.