profesionalac
Professional
Datum učlanjenja: 21.06.2005
Poruke: 294
Hvala: 93
525 "Hvala" u 19 poruka
|
Je l moze ovako?
Citat:
SELECT a.ID, a.Name, d.ID
FROM a
INNER JOIN b AS b ON b.IDa = a.ID
INNER JOIN b AS c ON c.IDa = a.ID
AND b.ID <= c.ID
INNER JOIN b AS d ON d.IDa = a.ID
AND (
(
c.ID < d.ID && b.ID < c.ID
) || ( b.ID = c.ID && c.ID < d.ID ) || ( b.ID = c.ID && c.ID = d.ID )
)
GROUP BY a.ID, (
CASE WHEN (
b.ID = c.ID && c.ID = d.ID
)
THEN 1
WHEN (
b.ID = c.ID && c.ID < d.ID
)
THEN 2
ELSE 3
END
)
CREATE TABLE `a` (
`ID` int(11) NOT NULL auto_increment,
`Name` varchar(20) NOT NULL default '',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=4 ;
INSERT INTO `a` (`ID`, `Name`) VALUES
(1, 'prvo_ime'),
(2, 'drugo_ime'),
(3, 'trece_ime');
CREATE TABLE `b` (
`ID` int(11) NOT NULL auto_increment,
`IDa` int(11) NOT NULL default '0',
`Name` varchar(20) NOT NULL default '',
PRIMARY KEY (`ID`),
KEY `IDa` (`IDa`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=14 ;
INSERT INTO `b` (`ID`, `IDa`, `Name`) VALUES
(1, 1, 'lorem'),
(2, 1, 'ipsum'),
(3, 1, 'dolom'),
(4, 1, 'sit'),
(5, 1, 'amet'),
(6, 2, 'nesto'),
(7, 2, 'drugo'),
(8, 2, 'neki'),
(9, 2, 'rekord'),
(10, 3, 'necu'),
(11, 3, 'vise'),
(12, 3, 'ovo'),
(13, 3, 'ehe');
|
Poslednja izmena od BluesRocker : 17. 04. 2007. u 16:02.
|