tehro0n
سه شنبه 03 بهمن 1391, 19:36 عصر
سلام،
در یک جدول می خواهم دو سلکت گروهی داشته باشم با یک کوئری
اما مشکلی که وجود داره اینه که گروه اول درسته ولی گروه دوم به اندازه گروه اول ستونش تکرار میشه و دوباره به اندازه گروه اول یک ستون دیگه تکرار میشه تا تمام بشه!
چیکار کنم که دو گروه رو کنار هم قرار بدم و به صورت INNER و یا RIGHT و LEFT JOIN باشه که مشکلی پیش نیاد
اگر این جدول رو بخوام 3 گروهیش کنم به چه صورت میشه؟
کاری که من می کنم..
SELECT `outerOs`,`tempos`.`os`,`outerBs`,`tempbs`.`browse r`
FROM `url` `u`, (
SELECT COUNT(`id`) as `outerOs`, `os` FROM `hits` WHERE `id` = 1 AND `time` > 1356208200 GROUP BY `os` ORDER BY `outerOs` DESC LIMIT 9
) `tempos`
FULL JOIN (
SELECT COUNT(`id`) as `outerBs`, `browser` FROM `hits` WHERE `id` = 1 AND `time` > 1356208200 GROUP BY `browser` ORDER BY `outerBs` DESC LIMIT 9
) `tempbs`
ON `tempbs`.`id`=`tempos`.`id`
WHERE
`u`.`pass` = ddd
در یک جدول می خواهم دو سلکت گروهی داشته باشم با یک کوئری
اما مشکلی که وجود داره اینه که گروه اول درسته ولی گروه دوم به اندازه گروه اول ستونش تکرار میشه و دوباره به اندازه گروه اول یک ستون دیگه تکرار میشه تا تمام بشه!
چیکار کنم که دو گروه رو کنار هم قرار بدم و به صورت INNER و یا RIGHT و LEFT JOIN باشه که مشکلی پیش نیاد
اگر این جدول رو بخوام 3 گروهیش کنم به چه صورت میشه؟
کاری که من می کنم..
SELECT `outerOs`,`tempos`.`os`,`outerBs`,`tempbs`.`browse r`
FROM `url` `u`, (
SELECT COUNT(`id`) as `outerOs`, `os` FROM `hits` WHERE `id` = 1 AND `time` > 1356208200 GROUP BY `os` ORDER BY `outerOs` DESC LIMIT 9
) `tempos`
FULL JOIN (
SELECT COUNT(`id`) as `outerBs`, `browser` FROM `hits` WHERE `id` = 1 AND `time` > 1356208200 GROUP BY `browser` ORDER BY `outerBs` DESC LIMIT 9
) `tempbs`
ON `tempbs`.`id`=`tempos`.`id`
WHERE
`u`.`pass` = ddd