2009-10-06 5 views
0

Merci de m'accompagner avec new to SQL - J'essaye d'écrire une commande SQL avec une jointure dans une base de données PROGRESS. Je voudrais alors sélectionner uniquement le premier enregistrement correspondant de la jointure. J'ai pensé utiliser LIMIT mais PROGRESS ne supporte pas cela. MIN ou TOP fonctionnerait aussi je pense mais ayant des problèmes avec la syntaxe. Quelque chose comme ça -Commande SQL pour la jointure conditionnelle pour la base de données PROGRESS

SELECT table1.field 1, table2.field 2 
FROM table2 
INNER JOIN table2 
ON table1.field3=table2.field3 
WHERE table1.field4 in (SELECT min(table1.field4) FROM table1) 

, mais il semble que je ne peux pas utiliser MIN là comme disant ne peut pas y faire un agrégat. Toute aide serait importante.

Répondre

1

essayer:

SELECT 
    t1.field1, t2.field2 
    FROM table1   t1 
     INNER JOIN table2 t2 ON t1.field3=t2.field3 
    WHERE t1.field4=(SELECT min(t.field4) FROM table1 t WHERE t1.field4=t.field4) 
+0

J'ai essayé, mais il semble être l'interrogation pour le MIN de la table entière et non de la jointure. –

+0

Merci pour votre aide. Qu'entendez-vous par t par opposition à t1? –

+0

A la fin je mets t1.field3 = t2.field 3 et ça marche. Merci! –

Questions connexes