在MYSQL中以列作为表名,另一列作为外键以列作为表名的查询
在MYSQL中以列作为表名,另一列作为外键以列作为表名的查询,mysql,sql,phpmyadmin,Mysql,Sql,Phpmyadmin,img\u gallary(id、事件类型、事件名称、图像) 其中,event_type是表名,event_name是event_type字段之一(即表名的列) 如何根据事件名称及其id中的特定事件对事件进行分组 create table img_gallary ( id int primary key, event_type varchar(255), event_name varchar(255), image varchar(255)); insert into img_g
img\u gallary(id、事件类型、事件名称、图像)
其中,event_type是表名,event_name是event_type字段之一(即表名的列)
如何根据事件名称及其id中的特定事件对事件进行分组
create table img_gallary (
id int primary key,
event_type varchar(255),
event_name varchar(255),
image varchar(255));
insert into img_gallary values
(1, 'Music', 'Summer Jazz', 'jazz23.jpg'),
(2, 'Theatre', 'Hamlet', 'Booth_as_Hamlet.jpg'),
(3, 'Music', 'City Rock', 'brass_at_cityrock.jpg'),
(4, 'Music', 'Summer Jazz', 'summerj_miller.jpg');
create table music (
event_name varchar(255) primary key,
event_date date);
insert into music values
('City Rock', '2014-08-10'),
('Summer Jazz', '2014-09-13');
create table theatre (
event_name varchar(255) primary key,
event_date date);
insert into theatre values
('Hamlet', '2014-07-19');
select *
from img_gallary
natural join (
select 'Music' as event_type, event_name, event_date
from music
union
select 'Theatre' as event_type, event_name, event_date
from theatre
) event
order by event_type, event_name;