SQL Server 2005 не может ссылаться на столбец, который был "приведен" - PullRequest
1 голос
/ 17 мая 2011

этот запрос работает:

select ist_id,  ist_opis , CAST(ist_sifra as float ) as sifra 
from IZOBRAZBENA_STOPNJA 
where ist_aktivno<>0 
order by sifra

, но если я хочу видеть только, когда sifra = 5, я получаю «Неверное имя столбца 'sifra'."

select ist_id,  ist_opis , CAST(ist_sifra as float ) as sifra 
from IZOBRAZBENA_STOPNJA 
where ist_aktivno<>0 and sifra = 5
order by sifra

Я пыталсяоборачивая рабочий SQL-оператор в другое выделение, а затем используя "где sifra = 5", он также завершается ошибкой.

Ответы [ 2 ]

0 голосов
/ 17 мая 2011

Потому что нет колонки с именем сифра.Вы также приводите в предложении where

select ist_id,  ist_opis , CAST(ist_sifra as float ) as sifra 
from IZOBRAZBENA_STOPNJA 
where ist_aktivno<>0 and CAST(ist_sifra as float ) = 5
order by sifra

или ссылаетесь на некачественный столбец

select ist_id,  ist_opis , CAST(ist_sifra as float ) as sifra 
from IZOBRAZBENA_STOPNJA 
where ist_aktivno<>0 and ist_sifra = 5
order by sifra
0 голосов
/ 17 мая 2011

да, это факт. Вы должны сделать что-то вроде

где ist_aktivno <> 0 и ist_sifra = 5
или
где ist_aktivno <> 0 и CAST (ist_sifra as float) = 5

...