2013-11-25 9 views
0
SELECT tblT.Tick, First(tblB.BDF) AS FirstOfBDF 
FROM tblT INNER JOIN tblB ON tblT.Tick = tblB.Tick 
GROUP BY tblT.Tick; 

Таблица My Access (tblB) сортируется по тику, а затем по BDF. Почему он не получает правильные данные?Первый() INNER JOIN

+0

Почему вы используете _first() _ –

+3

В SQL таблицы * не сортируются *. Могут быть определенные гарантии, предоставляемые вашим продуктом базы данных, но для общего языка ваше утверждение неверно. Укажите, какую базу данных вы используете в качестве тега. –

+0

@Damien_The_Unbeliever: Функция _FIRST() доступна только в MS Access. –

ответ

2

Нет гарантий, что таблица сортируется, если вы явно не указали Order by.

select top 1 tblT.Tick, First(tblB.BDF) AS FirstOfBDF 
from FROM tblT INNER JOIN tblB ON tblT.Tick = tblB.Tick 
    GROUP BY tblT.Tick 
    Order by tblt.Tick ;