Форум: "Базы";
Текущий архив: 2009.06.28;
Скачать: [xml.tar.bz2];
ВнизВернуть "First" с условием Найти похожие ветки
← →
ivanoff (2008-10-01 15:26) [0]
SELECT
First(T1.f1),
First(T3.DataFld) <------ ...
FROM T1
LEFT JOIN T2 ON T1.id2 = T2.id
LEFT JOIN T3 ON T1.id3 = T3.id
GROUP BY T1.id1
.... вот там нужно получить не первую запись а первую при условии T2.MyField = T3.MyField если таковых нету чтоб вернуло NULL
← →
Поросенок Винни-Пух © (2008-10-01 15:34) [1]надо использовать закрытое объединение, а не открытое
← →
ivanoff (2008-10-01 15:46) [2]это как?
INNER JOIN
не подходит Access не принимает
← →
Поросенок Винни-Пух © (2008-10-01 15:47) [3]select ... from table 1, table 2
where table1.x = table2.y
← →
ivanoff (2008-10-01 15:51) [4]
> если таковых нету чтоб вернуло NULL
???
← →
Поросенок Винни-Пух © (2008-10-01 16:01) [5]если таковых не будет, выборка будет пустая
← →
Сергей М. © (2008-10-01 16:02) [6]
> ivanoff (01.10.08 15:51) [4]
И зачем тебе этот нул понадобился ?
Без него жизнь что ли не мила или что ?
Поясни ..
← →
ivanoff (2008-10-01 16:09) [7]эту самую выборку потом нужно обработать если там есть что-то - использую это ели нет (=NULL) знаю что надобно добавить запись в T3 с нуйным условием
...хочу знать стандартными средствами реализуемо или нет
← →
Поросенок Винни-Пух © (2008-10-01 16:16) [8]если там есть что-то удовлетворяющее условию, ты ее получишь.
если нет, то ты сам хотел чтобы
вот там нужно получить не первую запись а первую при условии T2.MyField = T3.MyField
← →
Сергей М. © (2008-10-01 16:28) [9]
> ivanoff (01.10.08 16:09) [7]
Не прояснилось, зачем тебе этот NULL ..
> если там есть что-то
Это условие соответствует непустому НД
> ели нет
Это условие соответствует пустому НД.
В чем проблема, зачем тут еще нул какой-то понадобился ?
← →
ivanoff (2008-10-01 16:30) [10]так мой вопрос именно в том как построить условие так, чтоб получить ВСЕ записи из T1 а из T3 получить первое соответствующее условию.
если Т3.MyField не соответствует условию, запись из Т1 должна попасть в выборку а на место Т3 должно быть NULL -> что значит в Т3 нету записей где(T1.id3 = T3.id) AND (T2.MyField = T3.MyField)
← →
Сергей М. © (2008-10-01 16:37) [11]А-а-а !.. похоже, я начал понимать, куда гнет автор)
Ему, видимо, RIGHT JOIN нужен, тогда при наличии хотя бы одной записи в T1 и отсутствии свя\занных записей в присоединенных таким образом T2 и T3 получится почти то что ему нужно - в НД будет одна запись с NULL во 2-м поле
← →
Поросенок Винни-Пух © (2008-10-01 16:39) [12]мои знакомые блондинки и то понятнее изъясняются
← →
Sergey13 © (2008-10-01 16:50) [13]SELECT
T1.f1,
Count(T3.*),min(T3.DataFld)
FROM T1
LEFT JOIN T2 ON T1.id2 = T2.id
LEFT JOIN T3 ON T1.id3 = T3.id
GROUP BY T1.id1
← →
Johnmen © (2008-10-01 16:53) [14]Тоже потренирую телепатию :)
Вот это что-ли:SELECT
First(T1.f1),
First(T3.DataFld) <------ ...
FROM T1
LEFT JOIN T2 ON T1.id2 = T2.id
LEFT JOIN T3 ON (T1.id3 = T3.id) AND (T2.MyField = T3.MyField)
GROUP BY T1.id1
← →
ivanoff (2008-10-01 17:00) [15]неа...
у меня несколько связок LEFT JOIN и Access не принимает RIGHT JOIN
мне бы в ON условии присобачить(T1.id3 = T3.id) AND (T2.MyField = T3.MyField)
← →
ivanoff (2008-10-01 17:03) [16]:)
> ON (T1.id3 = T3.id) AND (T2.MyField = T3.MyField)
я тож так думал но не принимает: Join expression not supported
← →
Сергей М. © (2008-10-01 17:08) [17]
> Access не принимает RIGHT JOIN
С каких это пор ?
http://office.microsoft.com/en-us/access/HA012314891033.aspx?pid=CH100728991033
← →
ivanoff (2008-10-01 17:20) [18]я не говорил "в принципе" не принимает
в моем случае не принимает
...
FROM ((((T1
LEFT JOIN ...)
LEFT JOIN T2 ON T1.id2 = T2.id)
LEFT JOIN ...)
RIGHT JOIN T3 ON T1.id3 = T3.id)
-> Join expression not supported
← →
Сергей М. © (2008-10-01 17:23) [19]
> ivanoff (01.10.08 17:20) [18]
Воспользуйся виз.конструктором запросов самого Access"а - он сам построит лексически и синтаксически правильный текст интересующего тебя SQL-запроса.
← →
ivanoff (2008-10-01 17:31) [20]и как мне там указать второе условие
← →
Сергей М. © (2008-10-01 17:35) [21]
> как мне там указать второе условие
Что значит "как" ? Средствами мастера конструирования запросов в составе MS Access !
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2009.06.28;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.005 c