Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以从不同的列中选择一个值作为MySQL中的一个值吗?_Mysql - Fatal编程技术网

我可以从不同的列中选择一个值作为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