Réception avec des enregistrements dans un même fichier joint

Les enregistrements d'un même fichier peuvent être joints. En d’autres termes, un fichier peut être spécifié à plusieurs reprises dans FROM. Par exemple, les données de certains enregistrements peuvent être comparées à l'aide de cette fonction.

Par exemple, le fichier SUPPLIERS montre que plusieurs fournisseurs fournissent la même pièce. L'utilisateur peut vouloir savoir quel fournisseur fixe un prix qui est le double, ou plus du double, de celui d'un autre. Pour transférer les informations nécessaires vers un workstation, spécifiez :
Bibliothèque/Fichier (Membre)SUPPLIERS, SUPPLIERS
JOIN BYT1.PARTNO = T2.PARTNO
SELECTT1.PARTNO, T1.SUPPNO, T1.PRICE, T2.SUPPNO, T2.PRICE
WHERET1.PRICE > 2 * T2.PRICE
ORDER BYT1.PARTNO

Le même fichier a été spécifié deux fois dans FROM. JOIN BY spécifie que les enregistrements ayant le même numéro de pièce sont joints. Cela crée un enregistrement joint contenant des informations sur deux fournisseurs d'une seule pièce. L'utilisateur peut repérer les enregistrements dont le prix est le double, ou plus du double, de celui d'un autre fournisseur.

Les enregistrements dans le fichier SUPPLIERS sont comparés, un par un, avec tous les enregistrements (y compris lui-même) du fichier SUPPLIERS. Lorsque le même numéro de pièce est trouvé, les deux enregistrements correspondants sont liés. Ce traitement est effectué pour chaque enregistrement du fichier SUPPLIERS.

Pour chaque enregistrement, le prix du premier fournisseur est comparé au prix du deuxième fournisseur. Lorsque le prix du premier fournisseur est le double, ou supérieur au double, de celui du second, seul le dossier contenant le prix du premier fournisseur est conservé.

Le résultat final est le suivant :
 Field: T1.PARTNO T1.SUPPNO T1.PRICE T2.SUPPNO T2.PRICE --------- --------- -------- --------- -------- Record 1: 221 51 .30 54 .10 2: 231 51 .10 54 .04 3: 241 53 .08 54 .02 4: 241 61 .05 54 .02