"where clause" 中的未知列“...”

Unknown column "..." in "where clause"

我在执行特定任务时遇到了这个问题:

SELECT radnik.*, nalog.prioritetNalog FROM radnik
INNER JOIN nalog ON radnik.sifRadnik=nalog.sifRadnik
WHERE kvar.nazivKvar ="Zamjena klipa";

结果:

Error Code: 1054
Unknown column 'kvar.nazivKvar' in 'where clause'

它是这样说的,但是列和数据表存在

https://i.stack.imgur.com/mQZt4.jpg

试试这个语法:

SELECT column1, column2....columnN
FROM   table_name1 t1, table_name2 t2
on t1.id = t2.id
WHERE  CONDITION;

示例:

SELECT radnik.*, nalog.prioritetNalog 
FROM radni INNER JOIN nalog 
ON radnik.sifRadnik=nalog.sifRadnik
WHERE table_name.column_name ="Zamjena klipa";

您还需要 JOIN:

SELECT r.*, n.prioritetNalog
FROM radnik r INNER JOIN
     nalog n
     ON r.sifRadnik = n.sifRadnik INNER JOIN
     kvar k
     ON k.sifkvar = n.sifkvar
WHERE k.nazivKvar = 'Zamjena klipa';

您只能在查询中引用 FROM 子句中定义的列。

我还漏了一个连接,感谢您的帮助

SELECT radnik.*, nalog.prioritetNalog FROM radnik
inner JOIN nalog ON radnik.sifRadnik=nalog.sifRadnik
inner join kvar on nalog.sifKvar=kvar.sifKvar 
WHERE kvar.nazivKvar ="Zamjena klipa";