如何在mysql中使用引用表中的列值进行排序?

如何在mysql中使用引用表中的列值进行排序?,mysql,Mysql,我有这样的疑问 Select f.* from fuel_log f where f.transaction_date='2006-05-28 00:00:00' order by f.driver.full_name; 我的问题是,我无法使用f.driver.full\u name进行订购。上面说没有这样的专栏。但是,这是正确的,因为,driver是fuel\u log表中的参考列。在这里,我试图根据驱动程序表中的值进行排序,这导致了一个问题。我可以知道如何根据参考表列中的值进行排序吗?

我有这样的疑问

Select f.* from fuel_log f 
where f.transaction_date='2006-05-28 00:00:00' 
order by f.driver.full_name;

我的问题是,我无法使用
f.driver.full\u name
进行订购。上面说没有这样的专栏。但是,这是正确的,因为,
driver
fuel\u log
表中的参考列。在这里,我试图根据驱动程序表中的值进行排序,这导致了一个问题。我可以知道如何根据参考表列中的值进行排序吗?。提前感谢。

正如您所说,驱动程序是两个表之间的公共引用列,然后您可以连接两个表以按引用列对其进行排序

请根据您需要的全名或驱动程序列修改order by子句

Select   f.* 
from     fuel_log f inner join driver d
on       f.driver = d.driver
where    f.transaction_date='2006-05-28 00:00:00' 
order by d.driver;

谢谢你的回答。无论如何,我已经加入了燃料日志和燃料检查表。这只是为了简单和更好的理解,我发布了普通查询。它也允许加入第三个表吗?如果您能够加入,那么排序时应该不会有任何问题。@Kishan_KP是的,仅供参考,我不会加入fuel_日志和driver表。我加入了燃料日志和燃料检查。但是,驱动程序在这两个表中都是引用列。