I know that in MySQL you can do something like SELECT foo AS bar FROM TABLE t; I'm trying to do something to the effect of SELECT command1 FROM table1 AS foo, command2 FROM table2 AS bar, (foo-bar) AS difference; but MySQL doesn't let me do that. Is there a way to do this in MySQL or will I need to get some extension? Thanks in Advance!
解决方案
Schema
create table t1
( id int auto_increment primary key,
thing varchar(100) not null
);
create table t2
( id int auto_increment primary key,
descr varchar(100) not null
);
insert t1(thing) values ('cat'),('dog');
insert t2(descr) values ('meow'),('likes bones');
Query
select t1.thing,t2.descr into @var1,@var2
from t1
join t2
on t2.id=t1.id
where t1.id=2; -- to avoid Error 1172: Result consisted of more than one row
View vars
select @var1 as thing,@var2 as descr;
+-------+-------------+
| thing | descr |
+-------+-------------+
| dog | likes bones |
+-------+-------------+
The important part of selecting into vars like above is to limit the resultset to 1 row max.