1
我目前正在使用我的老师的一些旧的Postgres SQL代码并修改它以匹配我需要的内容。但是,有一段代码似乎无法在网上找到解释。在代码中,他有一个使用~~ *的case语句,看起来像是一个比较。我不熟悉这种语法,并会非常感谢任何帮助。提前致谢。Postgres案例陈述
CASE
WHEN sessions.status ~~* 'data%finder%'::text THEN ((sessions.minutes_in_data_ || ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'text%edit%'::text THEN ((sessions.minutes_in_text_editor || ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'admin%module%'::text AND sessions.minutes_in_module<> 0 THEN ((sessions.minutes_in_module|| ' ('::text) || sessions.minutes_in_idle) || ')'::text
WHEN sessions.status ~~* 'client%module%'::text AND sessions.minutes_in_module<> 0 THEN ((sessions.minutes_in_module|| ' ('::text) || sessions.minutes_in_idle) || ')'::text
ELSE NULL::text
END AS "Duration (Idle)",
检查此链接http://www.postgresql.org/docs/9.0/interactive/functions-matching.html – Kuberchaun 2010-10-12 15:07:47