Foreign key - join problem
Jeg har følgende tabeller, hvorfra jeg gerne vil lave følgende udtrækCREATE TABLE `trainingday` (
`id` int(10) unsigned NOT NULL auto_increment,
`training_day` varchar(35) NOT NULL default '',
`sort` int(10) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/* consist of foreign keys only */
CREATE TABLE `traininginfo` (
`id` int(10) unsigned NOT NULL auto_increment,
`training_starttime_id` int(10) NOT NULL default '0',
`training_endtime_id` int(10) NOT NULL default '0',
`training_day_id` int(10) NOT NULL default '0',
`training_place_id` int(10) NOT NULL default '0',
`remark_id` int(10) default NULL,
`sort` int(10) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `trainingplace` (
`id` int(10) unsigned NOT NULL auto_increment,
`training_place` varchar(35) NOT NULL default '',
`sort` int(10) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `trainingtime` (
`id` int(10) unsigned NOT NULL auto_increment,
`training_time` varchar(35) NOT NULL default '',
`sort` int(10) default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Udtrækket :
select
traininginfo.id as traininginfoId,
tt1.training_time as starttime,
tt2.training_time as endtime,
training_day as day,
training_place as place
from trainingtime tt1, trainingday, trainingplace, traininginfo
inner join trainingtime tt2
on tt1.id = tt2.id
where traininginfo.training_starttime_id = tt1.id
and traininginfo.training_endtime_id = tt2.id
and trainingday.id = traininginfo.training_day_id
and trainingplace.id = traininginfo.training_place_id order by day
Problemet er at jeg i tabellen traininginfo har to foreign keys
(training_starttime_id, traininginfo.training_endtime_id) som begge peger over til en værdi i tabellen
trainingtime og hvis jeg mapper traininginfo.training_starttime_id = tt1.id og
and traininginfo.training_endtime_id = tt2.id, så får jeg ingen hit, selvom der er valide data i tabellen traininginfo
Hvad er det lige jeg gør forkert? :-)
