Sql 请选择所需的语句指针

Sql 请选择所需的语句指针,sql,oracle,join,Sql,Oracle,Join,我在找一些帮助或指点 我有一张这样的桌子 hostname |文件|大小 服务器1 | a.txt | 1050 服务器2 | a.txt | 1024 服务器3 | a.txt | 1050 如何在server2行中显示文件大小的差异? 我如何比较这三行-我需要plsql还是可以在sql中完成? oracle 12c数据库 谢谢你的回复 Dan您可以简单地使用秩函数进行此操作 对于您的示例数据- select hostname, file, size , rank() over (parti

我在找一些帮助或指点

我有一张这样的桌子

hostname |文件|大小
服务器1 | a.txt | 1050
服务器2 | a.txt | 1024
服务器3 | a.txt | 1050
如何在server2行中显示文件大小的差异? 我如何比较这三行-我需要plsql还是可以在sql中完成? oracle 12c数据库

谢谢你的回复
Dan

您可以简单地使用秩函数进行此操作

对于您的示例数据-

select hostname, file, size
, rank() over (partition by file order by size) rk
from files;

这将为您提供大小上具有秩的数据,如果查询输出中有秩>1的任何记录,则不同服务器上的文件大小存在差异

你期望的结果是什么?你能指定你想要的输出吗?我想搜索表格,找出其中一个文件大小的差异,文件名相同,但服务器不同。如果有差异,我想提醒某人,我希望有意义,谢谢你的帮助