Команда SQL для условного присоединения к базе данных PROGRESS

Пожалуйста, потерпите меня, новичок в SQL - я пытаюсь написать команду SQL с соединением в базе данных PROGRESS. Затем я хотел бы выбрать только первую совпадающую запись из соединения. Я думал использовать LIMIT, но PROGRESS этого не поддерживает. Я думаю, что MIN или TOP также будут работать, но у меня проблемы с синтаксисом. Что-то вроде этого?-

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)

НО, похоже, я не могу использовать там MIN, поскольку говорю, что не могу выполнить там агрегат. Любая помощь будет огромной.


person Community    schedule 06.10.2009    source источник


Ответы (1)


пытаться:

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)
person KM.    schedule 06.10.2009
comment
Я пробовал это, но, похоже, он запрашивает MIN всей таблицы, а не соединения. - person ; 06.10.2009
comment
Спасибо за вашу помощь. Что вы подразумеваете под t в отличие от t1? - person ; 07.10.2009
comment
В конце я вставил t1.field3=t2.field 3, и это работает. Спасибо! - person ; 07.10.2009