SELECT `u`.`nick`, IFNULL(`tc`.`count`, 0) AS `comments`,
IFNULL(`fp`.`count`, 0) AS `posts`,
IFNULL(`l`.`count`, 0) AS `likes`
FROM `users` AS `u`
LEFT JOIN (
SELECT `sender_id`, COUNT(*) AS `count`
FROM `thread_comments` GROUP BY `sender_id`
) AS `tc` ON `tc`.`sender_id` = `u`.`id`
LEFT JOIN (
SELECT `sender_id`, COUNT(*) AS `count`
FROM `forum_posts` GROUP BY `sender_id`
) AS `fp` ON `fp`.`sender_id` = `u`.`id`
LEFT JOIN (
SELECT `owner_id`, COUNT(*) AS `count`
FROM `likes` GROUP BY `owner_id`
) AS `l` ON `l`.`owner_id` = `u`.`id`
ORDER BY `tc`.`count` DESC, `u`.`nick` ASC
LIMIT 15
SELECT `t1`.`code`, `t1`.`name`, `t1`.`max_int1`, `t2`.`name`, `t2`.`max_int2`
FROM (
SELECT `t`.`name` AS `name`, `t`.`code` AS `code`, `t`.`int1` AS `max_int1`
FROM (
SELECT `code`, MAX(`int1`) AS `int1`
FROM `table` WHERE `city`= :city GROUP BY `code`
) AS `m`
JOIN `table` AS `t` ON `t`.`city` = :city AND `t`.`code` = `m`.`code`
AND `t`.`int1` = `m`.`int1`
) AS `t1`
JOIN (
SELECT `t`.`name` AS `name`, `t`.`code` AS `code`, `t`.`int2` AS `max_int2`
FROM (
SELECT `code`, MAX(`int2`) AS `int2`
FROM `table` WHERE `city`= :city GROUP BY `code`
) AS `m`
JOIN `table` AS `t` ON `t`.`city` = :city AND `t`.`code` = `m`.`code`
AND `t`.`int2` = `m`.`int2`
) AS `t2` ON `t1`.`code` = `t2`.`code`
SELECT `r`.`recipe_id`
FROM (
SELECT `recipe_id`, COUNT(*) AS `count`
FROM `flavour_recipe`
GROUP BY `recipe_id`
) AS `r`
JOIN (
SELECT `r`.`recipe_id` AS `recipe_id`, COUNT(*) AS `count`
FROM `flavour_user` AS `u`
JOIN `flavour_recipe` AS `r` ON `u`.`user_id` = :userId
AND `r`.`flavour_id` = `u`.`flavour_id`
GROUP BY `r`.`recipe_id`
) AS `f` ON `f`.`recipe_id` = `r`.`recipe_id` AND `f`.`count` = `r`.`count`
SELECT `r`.`id_zadakur` AS `taskId`,
sum(BS_TIME_DIFF(`r`.`arrival`, `r`.`departure`)) AS `wait`,
sum(BS_TIME_DIFF(IFNULL(`r2`.`departure`, `r`.`arrival`), `r`.`arrival`)) AS `active`
FROM `routes` AS `r`
LEFT JOIN `routes` AS `r2` ON `r2`.`id_zadakur` = `r`.`id_zadakur` AND `r2`.`series` = `r`.`series`-1
GROUP BY `r`.`id_zadakur`
SELECT `p`.*
FROM `products` AS `p`
JOIN `PropertyPivot` AS `pp1` ON `pp1`.`product_id` = `p`.`id`
AND `pp1`.`property_id` = :p1_property AND `pp1`.`option_id` = :p1_value
JOIN `PropertyPivot` AS `pp2` ON `pp2`.`product_id` = `p`.`id`
AND `pp2`.`property_id` = :p2_property AND `pp2`.`option_id` = :p2_value
SELECT `t1`.`id_house`, `t1`.`znach`, `t2`.`znach`, `t3`.`znach`, `t4`.`znach`
FROM (
SELECT `id_house`, `znach` FROM `table` WHERE `property_id` = :property1
) AS `t1`
JOIN (
SELECT `id_house`, `znach` FROM `table` WHERE `property_id` = :property2
) AS `t2` ON `t2`.`id_house` = `t1`.`id_house`
JOIN (
SELECT `id_house`, `znach` FROM `table` WHERE `property_id` = :property3
) AS `t3` ON `t3`.`id_house` = `t1`.`id_house`
JOIN (
SELECT `id_house`, `znach` FROM `table` WHERE `property_id` = :property4
) AS `t4` ON `t4`.`id_house` = `t1`.`id_house`