SELECT * FROM ( SELECT TOP 10 * FROM ( SELECT TOP 10 rt.route_beg, rt.route_end, n_1.node_name AS node_name_beg, n_2.node_name AS node_name_end, COUNT(rt.route_beg) as grp_count FROM vi_route rt INNER JOIN vi_nodes n_1 ON ( rt.net_id = n_1.net_id AND rt.route_beg = n_1.node_id ) INNER JOIN vi_nodes n_2 ON ( rt.net_id = n_2.net_id AND rt.route_end = n_2.node_id ) WHERE ( n_1.net_id = ? ) ORDER BY node_name_beg ASC ) AS foo #-- There must be GROUP BY CLAUSE but it's missed! --# ORDER BY node_name_beg DESC ) AS bar ORDER BY node_name_beg ASC : 'param_value'