订单不通过MySql

时间:2009-09-03 05:44:35

标签: mysql join sql-order-by

您好订购无法使用 MySql

代码如下,

select * from School where School.type = 'HighSchool' 
   order by (select locations.name from locations inner join School_locations 
      on locations.id = School_locations.location_id where 
         School_locations.School_id = School.id  and locations.location_country = 'US' limit 1)

并且输出显示相同的升序和降序如何解决此问题

3 个答案:

答案 0 :(得分:2)

我认为你不需要做子查询:

SELECT s.*
FROM School s
    INNER JOIN School_locations sl ON (s.id = sl.School_id)
    INNER JOIN locations l ON (l.id = sl.location_id)
WHERE l.location_country = 'US' AND s.type = 'High school'
ORDER BY l.name

答案 1 :(得分:0)

select school.* from school
    inner join school_locations on school_locations.schoolid = school.school_id
    inner join locations on locations.location.id = school_locations.locationid
where
    locations.location_country = 'US' and school.type = 'HighSchool'
order by
    locations.name
limit 1

答案 2 :(得分:0)

您可以使用此查询

 select School.* from School inner join School_locations 
 on School_locations.School_id = School.id 
 inner join locations 
 on locations.id = School_locations.location_id
 where locations.location_country = 'US' and School.type = 'HighSchool' 
 order by locations.name limit 1