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_name 进行订购。它说没有这样的专栏。但是,这是正确的,因为 driverfuel_log 表中的引用列。在这里,我尝试根据驱动程序表中的值进行排序,这导致了问题。我可以知道如何根据引用表列中的值进行排序吗?提前致谢。

最佳答案

正如您所说,驱动程序是两个表之间常见的引用列,那么您可以连接两个表以按引用列对其进行排序。

请根据您需要的 full_name 或驱动程序列修改 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;

关于mysql - 如何使用mysql中引用表中的列值进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23420438/

相关文章:

mysql - 我在我的 SQL 查询中没有看到错误

mysql - 我在 MySQL 中的第一个加法/减法

mysql - 自定义电子商务 Web 应用程序中的关系数据库问题

MySQL:连接 HABTM 表,然后用结果计数更新列

mysql - 从 mysql 数据库中获取最新行

MYSQL:选择与同一集合生成的条件匹配的集合

mysql - 从mysql表中删除两列的重复数据

php - JSON 和我的 PHP 页面

php - 查询没有返回结果

MySQL存储过程用于更新两个表(第二个表从第一个表开始自动递增值)