SELECT id, name, pic, 'product' AS ptype
FROM `st_product`
UNION ALL SELECT id, name, pic, 'menu' AS ptype
FROM `st_menu`
UNION ALL SELECT id, name, pic1, 'rst' AS ptype
FROM `st_rst`
希望PTYPE字段的值分别为product,menu,rst
可是ptype的值都product
高手帮忙解决一下,谢谢!
调试欢乐多
FROM st_product
UNION ALL SELECT id, name, pic, 'menu' AS ptype
FROM st_menu
UNION ALL SELECT id, name, pic1, 'rst' AS ptype
FROM st_rst
UNION ALL
SELECT id, name, pic, 'menu' AS ptype FROM `st_menu`
UNION ALL
SELECT id, name, pic1,'rst' AS ptype FROM `st_rst`
type 值為product 對應 st_product
type 值為menu 對應 st_menu
type 值為rst 對應 st_rst
语句没有问题,可能是后面两个表没有数据?
单独执行以下两个语句有数据吗?SELECT id, name, pic, 'menu' AS ptype
FROM `st_menu` SELECT id, name, pic1, 'rst' AS ptype
FROM `st_rst`
是PTYPE字段,但是ptype的值都是'product'
mysql也是可以的,贴点数据看看
ptype 值為menu 對應 st_menu
ptype 值為rst 對應 st_rst
如果還不行
還是建議到MYSQL版問
SELECT id, name, pic,ptype
from
((SELECT id, name, pic, 'product' AS ptype
FROM `st_product`
)
UNION ALL
(SELECT id, name, pic, 'menu' AS ptype
FROM `st_menu`)
UNION ALL
(SELECT id, name, pic1, 'rst' AS ptype
FROM `st_rst` )
)aa试试
create table `st_product` (id int,name varchar(20));
insert st_product select 1,'aa';
create table `st_menu` (id int,name varchar(20));
insert st_menu select 1,'bb';
create table `st_rst` (id int,name varchar(20));
insert st_rst select 1,'cc';select id,name,'product' as ptype from `st_product`
union all
select id,name,'menu' as ptype from `st_menu`
union all
select id,name,'rst' as ptype from `st_rst`
/*
id name ptype
------ ------ -------
1 aa product
1 bb menu
1 cc rst
*/