Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.09;
Скачать: CL | DM;

Вниз

Посоветйте книгу по SQL С ЗАДАНИЯМИ   Найти похожие ветки 

 
Anatoly Podgoretsky ©   (2008-02-01 16:41) [40]

> isasa  (01.02.2008 14:00:07)  [7]

WHERE к OUTER JOIN не имеет отношения.


 
Anatoly Podgoretsky ©   (2008-02-01 16:41) [41]

> Kolan  (01.02.2008 14:04:08)  [8]

Где здесь OUTER JOIN?


 
Romkin ©   (2008-02-01 16:51) [42]

Sandman25   (01.02.08 16:40) [39] Что-что?!
Кстати, в  [31] явно написан FULL JOIN


 
Romkin ©   (2008-02-01 16:55) [43]

У меня написано:
<join_type> = [INNER] JOIN | {{LEFT | RIGHT | FULL} [OUTER]} JOIN
Я что-то пропустил? Это где OUTER - аналог LEFT?


 
Sandman25   (2008-02-01 17:02) [44]

Romkin ©   (01.02.08 16:51) [42]

Точно, я описывал расширение Informix :(


 
Kolan ©   (2008-02-01 17:14) [45]

> Я что-то пропустил?

Microsoft® SQL Server™ 2000 uses these SQL-92 keywords for outer joins specified in a FROM clause:

LEFT OUTER JOIN or LEFT JOIN
RIGHT OUTER JOIN or RIGHT JOIN
FULL OUTER JOIN or FULL JOIN

:)


 
isasa ©   (2008-02-01 17:42) [46]

Anatoly Podgoretsky ©   (01.02.08 16:41) [40]

WHERE к OUTER JOIN не имеет отношения.


:)
Ну в пятницу к вечеру, спорить не стану, но можно вспомнить ORACLE ранних версий, где джоина не было, а был WHERE <key>(+)=<key>.

А так, да, никакого.


 
antonn ©   (2008-02-01 18:15) [47]

мускл:)
SELECT lm.*, lr.ReadDate FROM `list_mail` lm
LEFT JOIN `list_read` lr ON lm.ID=lr.ID
WHERE lm.ID="123" AND lr.User_ID="321"


посмотреть readdate, если не false (или что там по дефолту) значит прочел :)


 
Игорь Шевченко ©   (2008-02-01 18:22) [48]

isasa ©   (01.02.08 17:42) [46]

Собственно и не только в ранних, в 11-ом Оракле тоже. Мне синтаксис с (+) куда как более понятен, чем JOIN-ы


 
isasa ©   (2008-02-01 19:25) [49]

Игорь Шевченко ©   (01.02.08 18:22) [48]

Не, ну синтаксическое разделение условий объединения и отбора имеет смысл.
Оно понятнее. Не все в куче. Легче читается. Правда буквочек набирать надо больше ...
Но за все хорошее надо платить. :)


 
isasa ©   (2008-02-01 19:29) [50]

ГЫ Вспомнился деятель который и в джоин вмостил условие отбора
типа
..
inner join Table on ((masterID=value) and (masterID=detailID))
...
where ....

долго искали :)


 
ms1   (2008-02-01 19:31) [51]

SELECT lm.*, lr.ReadDate
    FROM `list_mail` lm
    LEFT JOIN `list_read` lr
    ON lm.ID=lr.ID
    WHERE lm.ID="123" AND lr.User_ID="321"

Правильное оформление ОЧЕНЬ облегчает быстрое чтение


 
isasa ©   (2008-02-01 19:34) [52]

ms1   (01.02.08 19:31) [51]
Правильное оформление ОЧЕНЬ облегчает быстрое чтение


Я пишу так

SELECT lm.*, lr.ReadDate
FROM `list_mail` lm
   LEFT JOIN `list_read` lr ON lm.ID=lr.ID
WHERE lm.ID="123" AND lr.User_ID="321"


 
Игорь Шевченко ©   (2008-02-01 19:58) [53]

isasa ©   (01.02.08 19:25) [49]


> Не, ну синтаксическое разделение условий объединения и отбора
> имеет смысл.
> Оно понятнее. Не все в куче. Легче читается. Правда буквочек
> набирать надо больше ...


Так и читать буквочек надо тоже больше...

И потом, я не зря сказал, что мне синтаксис понятен. Я не призываю никого в свою веру - дело привычки. Оракл тоже не призывает - он предоставляет оба варианта записи, с одним лишь исключением - FULL OUTR JOIN плюсиками нельзя записать. Но за все время своего знакомства с Oracle я еще не встречал задачу, где бы мне потребовался FULL OUTER JOIN.


 
antonn ©   (2008-02-01 19:59) [54]


> Правильное оформление ОЧЕНЬ облегчает быстрое чтение

мне очень облегчает так, как я написал, ну или [52], а в [51] мешанина...


 
Anatoly Podgoretsky ©   (2008-02-01 21:05) [55]

> Sandman25  (01.02.2008 16:40:39)  [39]

Иногда это одно и тоже для вариантов написания, Outer Join, Join - но это зависит от серверов, что именно выбирается если используется не каноническая формат Left Outer Join


 
Anatoly Podgoretsky ©   (2008-02-01 21:06) [56]

> isasa  (01.02.2008 17:42:46)  [46]

Это другая нестандартная форма += и *= вот и гадай что это значит и не ошибись.


 
Anatoly Podgoretsky ©   (2008-02-01 21:10) [57]

> Игорь Шевченко  (01.02.2008 19:58:53)  [53]

Бывают, но редко, как и CROSS JOIN



Страницы: 1 2 вся ветка

Текущий архив: 2008.03.09;
Скачать: CL | DM;

Наверх




Память: 0.57 MB
Время: 0.021 c
8-1176801617
dr_craigan
2007-04-17 13:20
2008.03.09
Изображение


15-1201997117
bagos
2008-02-03 03:05
2008.03.09
защита программы от декомпиляции


6-1179846831
samael6
2007-05-22 19:13
2008.03.09
Вынуть аттачмент из TidMessage без его "распаковки" + с хеадером


15-1201787534
Alien1769
2008-01-31 16:52
2008.03.09
Как узнать тип ОС удаленного сервера


4-1184345957
GrayWolf
2007-07-13 20:59
2008.03.09
Утечка USER-хэндлов