2010-11-18 4 views
1

У меня есть (мой) вопрос SQL. Если у меня есть таблица, скажем, «Автомобили с разными столбцами», две из которых - INT, которую я хочу добавить вместе, один из которых называется «backwheels», а другой - «колесики».MySQL выбрать запрос, выбрав, где из столбца, сгенерированного на лету

я могу сделать этот запрос, чтобы добавить их вместе, когда я выбираю

select (backwheels+frontwheels) as totalwheels from Cars;

, который работает отлично, но когда я пытаюсь сделать выбор, где на этом totalwheels столбец, я получаю сообщение об ошибке

select (backwheels+frontwheels) as totalwheels from Cars where totalwheels=4;

ошибка я получаю обратно:

указан столбец «totalwheels» в «где п»

Можно ли каким-то образом выбрать из столбца, который на самом деле не существует, как это?

ответ

0

Эта ошибка вызвана тем, что в вашей таблице нет столбца «totalwheels», а предложение where пытается запустить условие для столбца, который не существует.

Вы можете попробовать использовать -

select (backwheels+frontwheels) as totalwheels from Cars where (backwheels+frontwheels)=4; 
3

Вы можете использовать:

select (backwheels+frontwheels) as totalwheels from Cars 
where (backwheels+frontwheels)=4; 

ИЛИ:

SELECT * from 
(select c.*, (backwheels+frontwheels) as totalwheels from Cars) 
where totalwheels=4; 
+0

Отличный материал, спасибо за вашу помощь. –

-2

Лучше попробовать с Alias:

select (c.backwheels+c.frontwheels) as totalwheels from Cars as c where totalwheels=4; 
+0

-1 это не работает – Patrick

Смежные вопросы