mysql - 'where-clause' 中的未知列

标签 mysql sql where-clause

我有简单的sql:

SELECT *
  FROM `oc_artists`
 WHERE `oc_artists`.`artist_id`=`oc_artists_tags`.`artist_id`
   AND `oc_artists_tags`.`artist_tag` LIKE '%klass%'

当我运行这个时,我得到:

1054 - Unknown column 'oc_artists_tags.artist_id' in 'where clause'

这是一个搜索脚本的 SQL。如果查询与 oc_artists_tags.artist_tag 匹配,我需要从 oc_artists 简单返回唯一结果。

最佳答案

您也需要加入表oc_artists_tags,您可以通过两种方式实现这一点,

选项 1

SELECT *
  FROM `oc_artists`
  INNER JOIN `test2` on `oc_artists`.`artist_id`=`oc_artists_tags`.`artist_id`
  AND `oc_artists_tags`.`artist_tag` LIKE '%klass%'

选项 2

SELECT *
  FROM `oc_artists`,`oc_artists_tags`
  WHERE `oc_artists`.`artist_id`=`oc_artists_tags`.`artist_id`
  AND `oc_artists_tags`.`artist_tag` LIKE '%klass%'

关于mysql - 'where-clause' 中的未知列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36639663/

相关文章:

mysql - 如何找到最接近的值并将其与记录合并?

mysql - 如何使用Where子句和Datetime来更新记录

mysql - 将选择转换为数组以进行 DELETE FROM

c# - 将多个字段绑定(bind)到 ASP.NET 中的列表框

php - 查询中带有选择选项的多处

MySQL,如何以这种格式获取日期范围 : YYYY-MM-DD HH

php - 使用 PhoneGap 转换 PHP MySQL 网页

php mysql 不再能够插入(错误的整数值 : '' for column 'id' at row 1 )

mysql - 如何将删除语句与子查询一起使用 - 错误 1093?

MySQL独特的Group By豁免案例