我可以从不同的列中选择一个值作为MySQL中的一个值吗?
我不确定这个问题的措辞是否正确,但我以前从来没有必要做这样的事情 我有两个表:我可以从不同的列中选择一个值作为MySQL中的一个值吗?,mysql,Mysql,我不确定这个问题的措辞是否正确,但我以前从来没有必要做这样的事情 我有两个表:articles和article\u content,我想搜索关键字 两个表都有相关列,ID和article\u ID articles包含标题,article\u content包含正文和其他元数据 我正在尝试进行关键字搜索,搜索标题和正文内容,但由于它们位于两个不同的表中,我不确定如果其中一个表有匹配项,如何返回ID 在MySQL中可以做类似的事情吗?以下是我的想法,这显然是无效代码: SELECT `ID` FR
articles
和article\u content
,我想搜索关键字
两个表都有相关列,ID
和article\u ID
articles
包含标题,article\u content
包含正文和其他元数据
我正在尝试进行关键字搜索,搜索标题和正文内容,但由于它们位于两个不同的表中,我不确定如果其中一个表有匹配项,如何返回ID
在MySQL中可以做类似的事情吗?以下是我的想法,这显然是无效代码:
SELECT `ID` FROM `articles` OR `article_ID` from `article_content`
WHERE
EITHER
`articles`.`title` LIKE '%SearchTerm%' OR
`article_content`.`description` LIKE '%SearchTerm%'
我试图将其作为一个查询运行,因为我有一个按案例排序的查询…
,它对结果进行加权
我一直在谷歌上搜索,但我不知道这会叫什么,所以我被卡住了。感谢您的帮助
SELECT 'article' source, `ID`
FROM `articles`
WHERE `title` LIKE '%SearchTerm%'
UNION ALL
SELECT 'content', `article_ID`
FROM `article_content`
WHERE `description` LIKE '%SearchTerm%'
如果你对术语所在的信息不感兴趣,那么
SELECT `ID`
FROM `articles`
WHERE `title` LIKE '%SearchTerm%'
UNION DISTINCT
SELECT `article_ID`
FROM `article_content`
WHERE `description` LIKE '%SearchTerm%'
如果你对术语所在的信息不感兴趣,那么
SELECT `ID`
FROM `articles`
WHERE `title` LIKE '%SearchTerm%'
UNION DISTINCT
SELECT `article_ID`
FROM `article_content`
WHERE `description` LIKE '%SearchTerm%'
您不需要同时选择articles.ID和article\u内容。第11条,因为两者将是相同的
您不需要同时选择articles.ID和article\u内容。这两篇文章都是一样的。ooh,我喜欢这个。让我试一试。我选择了这个稍微修改一下的版本,因为它返回结果的速度比另一个答案快得多。谢谢你们两位!哦,我喜欢这个。让我试一试。我选择了这个稍微修改一下的版本,因为它返回结果的速度比另一个答案快得多。谢谢你们两位!这可能是表的笛卡尔积,这将是非常低效的这可能是表的笛卡尔积,这将是非常低效的我没有得到你想要的结果,如果存在=也做a我没有得到你想要的结果,如果存在=也做a