Bonjour,

Je te remercie. Apparemment l'essentiel de mes problèmes tenait au fait que
mes tables n'avaient que des caractères numériques dans leur nom. J'ai
ajouté un « T » dedans et tout est rentré dans l'ordre avec cette syntaxe :

SELECT * FROM "T2010" WHERE NOT "Compte" IN ( SELECT "Compte" FROM "T2009" )

Mais ta syntaxe, adaptée au nouveau libellé de mes tables, fonctionne aussi
très bien :

SELECT * FROM "T2010" WHERE NOT "Compte" IN ( SELECT DISTINCT "Compte" FROM
"T2009" )

Quel est l'utilité de « DISTINCT » ?

Le fait de transformer les libellés des tables en texte (T2010, T2009...)
permet de s'affranchir des guillemets :

SELECT * FROM T2010 WHERE NOT Compte IN ( SELECT DISTINCT Compte FROM T2009
)

fonctionne aussi très bien. Quel est l'utilité des guillemets ? Tourner la
difficulté des noms de tables et de champs qui pourraient n'être que
numériques ?

Merci et bonne journée,

Dominique

Bonjour,
DISTINCT permet la sélection d'un unique item
les guillemets signalent le début et la fin du nom d'un champ, sans guillemet, le premier espace du nom du champ est interprété comme fin du nom. Si tu veux en savoir plus, le guide HSQLDB a été traduit ici : http://wiki.openoffice.org/wiki/Fr.openoffice.org/FAQ/Base/Guide_HSQLDB
Le guide pour le HSQLDB version 2.2 n'a pas été traduit : il faut suivre les 
liens ici
http://wiki.documentfoundation.org/FR/Base/HSQLDB_Guide_2.2#D.C3.A9marrer_et_utiliser_HSQL
J.M






--
Envoyez un mail à [email protected] pour savoir comment vous 
désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés

Répondre à