繁体   English   中英

在PostgreSQL中实现自定义比较

[英]Implement custom comparison in postgresql

我在postgres表中有一些数据,其中一列称为version(类型为varchar)。 我想使用自己的比较功能对该列进行排序/排序,但是我不确定最合适的答案是什么:

  • 我有一个样式为comp(left,right)-> -1/0/1的JS实现,但是我不知道如何在sql order by子句中使用它(通过plv8)
  • 我可以编写一个C扩展名,但是对此我并不感到特别兴奋(主要是出于维护的原因,因为用C编写比较本身不会太困难)
  • 其他 ?

我感兴趣的比较类型类似于程序包管理器中使用的版本字符串排序。

你要:

ORDER BY mycolumn USING operator

请参阅SELECT文档 看起来您可能需要为该函数定义一个运算符,以及一个b树运算符类,其中包含要使用的运算符; 您不能只USING myfunc()编写。

(现在没有时间进行测试并编写演示)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM