Thread SQL-Abfrage formulieren
(17 answers)
Opened by MartinR at 2007-12-07 13:30
So hab's ich grad ausprobiert ...
CREATE TABLE `x_personal` ( `p_id` tinyint(4) NOT NULL auto_increment, `name` varchar(50) NOT NULL default '', PRIMARY KEY (`p_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ; INSERT INTO `x_personal` VALUES (1, 'Meier'); INSERT INTO `x_personal` VALUES (2, 'Mueller'); INSERT INTO `x_personal` VALUES (3, 'Huber'); INSERT INTO `x_personal` VALUES (4, 'Schmid'); INSERT INTO `x_personal` VALUES (5, 'Meister'); CREATE TABLE `x_zuordnung` ( `z_id` tinyint(4) NOT NULL auto_increment, `p_id` tinyint(4) NOT NULL default '0', `a_id` tinyint(4) NOT NULL default '0', `datum` date NOT NULL default '0000-00-00', PRIMARY KEY (`z_id`), KEY `a_id` (`p_id`,`a_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=13 ; INSERT INTO `x_zuordnung` VALUES (1, 1, 1, '2007-01-01'); INSERT INTO `x_zuordnung` VALUES (2, 1, 2, '2007-03-01'); INSERT INTO `x_zuordnung` VALUES (3, 1, 5, '2007-06-01'); INSERT INTO `x_zuordnung` VALUES (4, 1, 1, '2007-07-01'); INSERT INTO `x_zuordnung` VALUES (5, 2, 3, '2007-01-01'); INSERT INTO `x_zuordnung` VALUES (6, 3, 2, '2007-01-01'); INSERT INTO `x_zuordnung` VALUES (7, 3, 4, '2007-04-01'); INSERT INTO `x_zuordnung` VALUES (8, 4, 3, '2007-02-01'); INSERT INTO `x_zuordnung` VALUES (9, 4, 1, '2007-03-01'); INSERT INTO `x_zuordnung` VALUES (10, 5, 4, '2007-01-01'); INSERT INTO `x_zuordnung` VALUES (11, 2, 1, '2007-03-01'); INSERT INTO `x_zuordnung` VALUES (12, 2, 3, '2007-05-01'); CREATE TABLE `x_abteilung` ( `a_id` tinyint(4) NOT NULL auto_increment, `abteilung` varchar(50) NOT NULL default '', PRIMARY KEY (`a_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=6 ; INSERT INTO `x_abteilung` VALUES (1, 'Verkauf'); INSERT INTO `x_abteilung` VALUES (2, 'Werbung'); INSERT INTO `x_abteilung` VALUES (3, 'Lager'); INSERT INTO `x_abteilung` VALUES (4, 'Leitung'); INSERT INTO `x_abteilung` VALUES (5, 'Buchhaltung'); SELECT DISTINCT P.p_id, P.name FROM x_personal AS P, x_abteilung AS A, x_zuordnung AS Z WHERE P.p_id = Z.p_id AND A.a_id = Z.a_id AND Z.datum <= '2007-04-10' AND Z.a_id = 1 ORDER BY P.p_id, Z.datum DESC |