[ kiklop74 @ 21.11.2012. 22:08 ] @
Ovo je verovatno neka moja glupost ali nikako da nabudzim da radi ovaj query:

Tabla i podaci:
Code:

CREATE  TABLE `test`.`t1` (
  `id` INT NOT NULL AUTO_INCREMENT ,
  `itemid` INT NOT NULL ,
  `userid` INT NOT NULL ,
  `grade` INT NULL ,
  PRIMARY KEY (`id`) );

INSERT INTO `test`.`t1` (`itemid`, `userid`, `grade`) VALUES (1, 1, 3);
INSERT INTO `test`.`t1` (`itemid`, `userid`, `grade`) VALUES (1, 2, 5);
INSERT INTO `test`.`t1` (`itemid`, `userid`, `grade`) VALUES (1, 4, 2);
INSERT INTO `test`.`t1` (`itemid`, `userid`, `grade`) VALUES (2, 1, 2);
INSERT INTO `test`.`t1` (`itemid`, `userid`, `grade`) VALUES (2, 4, 5);


Pokusavam da dobijem nesto kao ovo:

itemid user1 user2 user3 user4
1 3 5 null 2
2 2 null null 5

I nikako ne ide.
[ kiklop74 @ 21.11.2012. 22:23 ] @
Nadjoh sam

Code:

SELECT 
t1.itemid,
MAX(IF(t1.userid=1, grade, NULL)) AS 'User 1',
MAX(IF(t1.userid=2, grade, NULL)) AS 'User 2',
MAX(IF(t1.userid=3, grade, NULL)) AS 'User 3',
MAX(IF(t1.userid=4, grade, NULL)) AS 'User 4'
FROM t1
GROUP BY t1.itemid