Nella tabella A ho:
- Option -+--- Value ------------------------------------------------------------------------------ jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3
Nella tabella B ho:
----- Option -----------+--- Value ------------------------------------------------------------------------------ inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 managementKey | VSS.1.1.2 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both resultControl.key | CMD.5.5.5.5 recognictionControl.key | CMD.6.6.6.6 recognictionControl.foo | GOOFY.6.6.6
Quindi nella tabella A ho solo 2 records presenti nella tabella B.
Ora con una sola query vorrei estrarre tutti i records:
se ci sono nella A li prendo dalla A, altrimenti dalla B dove so che ci sono tutti (è una tabella "template").
Dove sbaglio ? (con Oracle userei NVL ma su postgreSQL c'è COALESCE)
SELECT COALESCE(TRIM(A."Option"), TRIM(B."Option" )), COALESCE(TRIM(A."Value" ), TRIM(B."DefaultValue")) FROM "HaiClientPluginOption" A, "PluginOption" B WHERE A."HaiPluginOptionId" = B."Id" AND B."Id" = 1;
Output:
coalesce | coalesce -----------+---------------------------------------------------------------------------------------- jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 jInitFile | /home/user/workspace/hai2.0/test/linux/asrTwoClientPCMSimplex/client_2/jconf.both inputKey | AUDIO.5.1.1;AUDIO.5.2.2;AUDIO.5.3.3 (12 rows)
ho provato ad aggiungere questa:
AND B."Option" IN ( SELECT "Option" FROM "PluginOption" WHERE "Id" = 1 );
ma nada.