您好朋友我有以下表格结构的表格
我想访问特定_id(quoteId)的所有类似引号(具有相同的author_id和category_id)
早些时候
类似的引号表示此表的所有那些行的所有列都具有相同的category_id 和相同的author_id。如果两个引用的作者相同且类别相同,则可以认为它们是相似的。
所以我正在使用以下查询
SELECT `related_quote`.* FROM
`quote` AS `main_quote` LEFT JOIN
`quote` AS `related_quote`
USING(`author_id`, `category_id`)
WHERE `main_quote`.`_id` = QUOTE_ID
但是现在对于其他一些要求,类似报价的定义略有改变
类似的引号意味着此表的所有那些行的所有列都具有相同的category_id 或相同的author_id。如果两个引用的作者相同且类别相同,则可以认为它们是相似的。
请帮我创建 OR 条件的查询 谢谢你
答案 0 :(得分:2)
SELECT related_quote.*
FROM quote AS main_quote
LEFT JOIN quote AS related_quote
ON (related_quote.author_id = main_quote.author_id OR
related_quote.category_id = main_quote.category_id)
WHERE main_quote._id = main_quote._ID
答案 1 :(得分:1)
您可以使用类似
的内容SELECT
t1.column1,
t1.column2,
t2.column1,
t2.column2,
t3.column1,
t3.column2
FROM t1
LEFT JOIN t2 ON (t2.ForeignKey = t1.primaryKey)
LEFT JOIN t3 ON (t3.foreignKey = t2.PrimaryKey)
WHERE t1.columnName = 'somevalue';