简体   繁体   English

如何使用 SOCI 库处理减号运算符?

[英]How to handle minus operator with SOCI library?

I need to use SOCI library to handle minus operator in a database agnostic way.我需要使用 SOCI 库以与数据库无关的方式处理减号运算符。 Oracle keyword 'MINUS' does not support in postgres and respective postgres keyword is 'EXCEPT' .在 postgres 中不支持 Oracle 关键字 'MINUS' 并且相应的 postgres 关键字是 'EXCEPT' 。 Ex : Oracle Syntax SELECT COUNT(*) FROM (SELECT C1 FROM s1.T1 **MINUS** (SELECT C1 FROM S2.T1));例如:Oracle 语法SELECT COUNT(*) FROM (SELECT C1 FROM s1.T1 **MINUS** (SELECT C1 FROM S2.T1));

Postgres Syntax SELECT COUNT(*) FROM (SELECT C1 FROM s1.T1 **EXCEPT** (SELECT ENTITY_ID FROM C1 FROM s2.T1)); Postgres 语法SELECT COUNT(*) FROM (SELECT C1 FROM s1.T1 **EXCEPT** (SELECT ENTITY_ID FROM C1 FROM s2.T1));

Likewise SOCI library provide a function to handle nvl ('''soci::session::nvl()'''), is there any capability to handle minus operator as well?同样,SOCI 库提供了一个函数来处理 nvl ('''soci::session::nvl()'''),是否也有处理减号运算符的能力?

Yes.是的。 SOCI library has provided a function call soci::session::except() function to fulfill this requirement. SOCI 库提供了一个函数调用 soci::session::except() 函数来满足这个要求。

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

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