mysql - MySQL 查询中的未知列

标签 mysql

我有以下查询

SET @CompanyId = "2030";

SELECT DISTINCT (NAME) 
FROM i18ninterviewmodel 
WHERE LocaleId='1' 
AND InterviewModelId IN (
    SELECT Id 
    FROM interviewmodel 
    WHERE TYPE IN ('ABC','123') 
    AND Id IN (
        SELECT InterviewModelId 
        FROM companyinterview 
        WHERE STATUS='ACTV' 
        AND CompanyId=@CompanyId
    )
)
ORDER BY NAME ASC;

我想使用 JOINS 重写它,但遇到了问题。当我使用下面的内容时,我不断收到错误消息

Unknown column 'companyinterview.Status' in 'where clause'

SET @CompanyId = "2030";

SELECT i18ninterviewmodel.Name 
FROM i18ninterviewmodel
JOIN i18ninterviewmodel i18 
    ON interviewmodel.Id = i18.InterviewModelId
JOIN interviewmodel 
    ON companyinterview.InterviewModelId = interviewmodel.Id
WHERE i18ninterviewmodel.LocaleId='1' 
AND companyinterview.Status='ACTV' 
AND companyinterview.CompanyId=@CompanyId 
AND interviewmodel.type IN ('ABC','123') 
ORDER BY i18ninterviewmodel.Name ASC;

我对 MySQL 没有太多经验,所以我不确定问题出在哪里。

最佳答案

我看不到您在任何时候加入 companyinterview 表的位置。

我猜你想写这个:

SET @CompanyId = "2030";
SELECT i18ninterviewmodel.Name FROM i18ninterviewmodel
JOIN i18ninterviewmodel i18 ON interviewmodel.Id = i18.InterviewModelId
JOIN companyinterview ON companyinterview.InterviewModelId = interviewmodel.Id
WHERE i18ninterviewmodel.LocaleId='1' AND companyinterview.Status='ACTV' AND companyinterview.CompanyId=@CompanyId AND interviewmodel.type IN ('ABC','123') ORDER BY i18ninterviewmodel.Name AS

关于mysql - MySQL 查询中的未知列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47060241/

相关文章:

php - Mysql varchar比较

php - 在 Mysql 中构建标签搜索引擎 - 排序问题

编码为 JSON 的 PHP AJAX 数组未在 HTML 表中显示排序,但仅在执行 MySQL 查询时显示排序

mysql - 简单的数据库查看器和搜索工具

php - 在 mysql 表中保存当前 ip 地址

ios - 在 Swift 中解析 JSON 数据

php - MySql 查询作者和书籍数量

MySQL - 对于没有数据的 Date_Format 子集,显示 Count = 0

php - Mysql 和 PHP : searching in different mysql tables

mysql - 存储 RSA key 的最佳 mysql 数据类型?