没有等效于Oracle解码功能 在Postgres中是否有任何人将解码写为函数?解码等效于postgres
回答
有一个等价物。它被称为CASE
声明。
有两种形式的CASE:
简单的例子:
CASE search-expression
WHEN expression [, expression [ ... ]] THEN
statements
[ WHEN expression [, expression [ ... ]] THEN
statements
... ]
[ ELSE
statements ]
END CASE;
CASE搜索:
CASE
WHEN boolean-expression THEN
statements
[ WHEN boolean-expression THEN
statements
... ]
[ ELSE
statements ]
END CASE;
CASE
语句更容易阅读;我更喜欢这些在Oracle中的decode()
。
我也喜欢'CASE'而不是'decode()' – 2013-03-07 08:00:23
如果您习惯了Oracle特定的功能,您可能需要安装PostgreSQL扩展orafce
。
在其他Oracle特定功能中,orafce
还实现了DECODE
- 您正在寻找的一个功能。
如果您在Ubuntu上运行,您只需安装程序包postgresql-9.1-orafce
即可在您的PostgreSQL服务器中使用orafce
。
在windows中,我怎么安装这个? – vmb 2013-03-07 11:24:09
它应该是可能的 - 我从来没有尝试过。好吧,我在Windows上试过Postgres,但是与Linux相比,它运行得慢得多,我从不回头。如果你关心性能,你真的不应该在Windows上运行PostgreSQL - 看看[PostgreSQL开发者之一的回答](http://serverfault.com/questions/222430/is-postgresql-suited-to-one-os -is-它,更好,对Linux的超窗口)。 – mvp 2013-03-07 11:54:13
如何在windows上安装..你可以分享下载链接 – vmb 2013-03-07 12:02:16
- 1. 等效连接postgres和sqlite
- 2. 等效于WM_MOVE
- 3. 等效于vb.net的c#代码
- 4. 适用于VB.net的App.TaskVisible等效代码
- 5. Tiff等效于UIImage.AsPNG()
- 6. IsNan等效于C
- 7. ifdef等效于TCL
- 8. fgets等效于C++
- 9. // @ sourceURL等效于CSS
- 10. __LINE__等效于Javascript
- 11. FileMakerPro等效于Linux?
- 12. ShellExecute等效于.NET
- 13. 等效于libmysqldev FreeBSD
- 14. DataInputStream.skip等效于C#
- 15. curl等效于C#
- 16. JRE等效于Python
- 17. .BAT等效于MAC
- 18. ob_get_contents等效于asp
- 19. Response.Redirect等效于C#
- 20. char.IsLetterOrDigit等效于php
- 21. Exceldna等效于Java
- 22. cout.precision()等效于python
- 23. 等效于OpenSSL的
- 24. Android等效于JTextArea
- 25. powershell等效于SIGHUP
- 26. Winsock.SendData等效于Javascript?
- 27. Url.Content()等效于php?
- 28. HTTPLiveHeaders等效于IE?
- 29. jQuery.getJSON等效于MooTools
- 30. phpmyadmin等效于IOS?
如果你描述那个函数的功能,你可能会有更好的运气。因为任何知道Postgres的人都知道,但如果没有首先研究Oracle的话,Oracle就完全不能提供答案。 – qqx 2013-03-07 03:11:26
没有像'decode'这样的简单查找,但是可以使用SQL标准CASE语句。 – 2013-03-07 03:17:28