|
Синтаксис SQL | ☑ | ||
|---|---|---|---|---|
|
0
ado
10.11.09
✎
23:11
|
Столкнулся сегодня вот с такой конструкцией:
Вот что такое это "*="? Я, конечно, смутно догадываюсь, что так левое соединение записали, но в документации ни разу такого не встречал. |
|||
|
1
ДенисЧ
10.11.09
✎
23:11
|
это устаревшее и депрекейтед left outer join
|
|||
|
2
Sadovnikov
10.11.09
✎
23:12
|
+(1) Да и вот таким:
table1, table2 тоже пользоваться не стоит... |
|||
|
3
Лефмихалыч
10.11.09
✎
23:13
|
(2) это древнеэскуэльский синтаксис, которыым пользовались еще до того, как Кирилл с Мифодием соединения придумали
|
|||
|
4
Ненавижу 1С
гуру
10.11.09
✎
23:15
|
я вот предлагаю инновацию:
a~b <=> a=b or (a is null and b is null) a~=b <=> a=b or a is null a=~b <=> a=b or b is null a~=~b <=> a=b or a is null or b is null |
|||
|
5
Ненавижу 1С
гуру
10.11.09
✎
23:16
|
+(4) ничего нового, просто синтаксический сахар
|
|||
|
6
Sadovnikov
10.11.09
✎
23:16
|
(3) Кто бы спорил :)
Но согласись, что это не значит, что такми синтаксисом стоит пользоваться, когда космические корабли бороздят... |
|||
|
7
ado
10.11.09
✎
23:17
|
От жеж блин, как я ишшо молод то ...
(2) Да я то всегда явно соединяю, и вообще все стараюсь явно делать, это в чужом коде ковыряться пришлось. |
|||
|
8
Лефмихалыч
10.11.09
✎
23:17
|
(6) ну, ado же вроде сказал, что он чье-то мумиё разгребает, видимо очень окаменелое попалось
|
|||
|
9
Лефмихалыч
10.11.09
✎
23:19
|
(4) думаешь, скулю реально нужны эльфийские руны?
|
|||
|
10
ado
10.11.09
✎
23:20
|
(8) Да вроде не такой уж и древний код был ...
|
|||
|
11
Sadovnikov
10.11.09
✎
23:20
|
(7) Молодца! :)
(8) Либо, пейсатель не совсем вменяемый был... Глянь, например, перлы от1С, которые во встроенной справке по язуку запросов живут. Они там на полном серьезе именно такому связыванию учат... |
|||
|
12
Лефмихалыч
10.11.09
✎
23:21
|
(10) значит пейсатель мануал по SQL читал еще с папируса
|
|||
|
13
Ненавижу 1С
гуру
10.11.09
✎
23:21
|
(9) поверь паскалисты совершенно не плачут
когда пишут a=a+b вместо a+=b этож на любителя |
|||
|
14
ado
10.11.09
✎
23:23
|
(11) Думаю, в 1С динозавров от IT хватает ;-)
|
|||
|
15
ado
10.11.09
✎
23:24
|
(13) Паскалисты пишут a:=a+b !
|
|||
|
16
ado
10.11.09
✎
23:25
|
+(15) Ибо нефиг одним знаком две разные сущности обозначать ;-)
|
|||
|
17
sapphire
10.11.09
✎
23:26
|
(2) С чего бы? простое произведен е таблиц. Зачастую полезно.
Например в 1С: Все склады+ все товары. |
|||
|
18
Лефмихалыч
10.11.09
✎
23:27
|
(17) ... равно недостаточно памяти для завершения операции :)
|
|||
|
19
Sadovnikov
10.11.09
✎
23:27
|
(17) Сунешься потом в такой код и потопаешь за водкой, мылом и веревкой. И приэтом будешь бурчать что-то типа "Машу вать!!!"...
Код абсолютно нечитабльным получается. |
|||
|
20
Ненавижу 1С
гуру
10.11.09
✎
23:29
|
(15) точно! у тех правда тоже 2 сущности, но несколько по другому природа
|
|||
|
21
Ненавижу 1С
гуру
10.11.09
✎
23:30
|
(17) я не понял что ты написал, честно
|
|||
|
22
Лефмихалыч
10.11.09
✎
23:31
|
(21) он написал, что = и := - это суть два разных оператора и так и должно быть в расово верных языках программирования
|
|||
|
23
Sadovnikov
10.11.09
✎
23:32
|
(22) Паскалисты бьют сишников? :)
|
|||
|
24
Ненавижу 1С
гуру
10.11.09
✎
23:35
|
(22) ты знаешь в других суть 2 разных это = и ==
|
|||
|
25
ado
10.11.09
✎
23:37
|
(24) Но есть расово неверные языки, где = и = записываются одинаково. Один из них мы все знаем ;-)
(17) Если честно, не представляю, где на практике нужно полное декартово произведение таблиц. |
|||
|
26
Ненавижу 1С
гуру
10.11.09
✎
23:41
|
(25) найти все заказ и реализации по ним, сопоставить их, при этом вывести также и те и другие, которым нет сопостовления, как то так
|
|||
|
27
Лефмихалыч
10.11.09
✎
23:42
|
(24) я ни где не сказал, что паскаль - единственно верный язык
|
|||
|
28
Ненавижу 1С
гуру
10.11.09
✎
23:43
|
(27З) меня синтаксис смутил
|
|||
|
29
Лефмихалыч
10.11.09
✎
23:44
|
+(27) более того, я его люто недолюбливаю
ЗЫ На религиозной почве без особенных причин |
|||
|
30
ado
10.11.09
✎
23:44
|
(26) Полное внешнее соединение. Это немножко другое.
|
|||
|
31
sapphire
10.11.09
✎
23:46
|
(21) А что непонятного?
(25) Мне нужно. Например есть товар, который должен быть на каждом складе. Условие для товра известно. Как получить таблицу товар-склад? Она же будет фильтром для всего остального. |
|||
|
32
Ненавижу 1С
гуру
10.11.09
✎
23:47
|
(30) извини, согласен
ну тогда там же, вывести только те, которые имеют пары заказ-реализация |
|||
|
33
Ненавижу 1С
гуру
10.11.09
✎
23:48
|
+(32) блин, это внутреннее, а не декартово
|
|||
|
34
Sadovnikov
10.11.09
✎
23:49
|
Чего спорите? Вначале речь ршла всего-навсего о представлении кода и удобстве последующего его чтения...
|
|||
|
35
Лефмихалыч
10.11.09
✎
23:50
|
(34) истину рожают...
|
|||
|
36
Sadovnikov
10.11.09
✎
23:50
|
(35) А... Тады не мешаю...
|
|||
|
37
Ненавижу 1С
гуру
10.11.09
✎
23:51
|
+(33) любое соединение с таблицей констант
|
|||
|
38
sapphire
10.11.09
✎
23:51
|
(33)(34)(35) Конструкцию из Oracle первых трех записей в студию.....
|
|||
|
39
Ненавижу 1С
гуру
10.11.09
✎
23:52
|
(38) ты как на Лубянке, что такого я сказал в (33)?
|
|||
|
40
sapphire
10.11.09
✎
23:53
|
Сегодня возник спор - как избежать грязного чтения в SQL 2008 БД 1с77?
Какой хинт использовать и режим сеанса. |
|||
|
41
Sadovnikov
10.11.09
✎
23:53
|
(40) Зачем ты собрался избегать грязногочтения в семерке?
|
|||
|
42
sapphire
10.11.09
✎
23:54
|
Например, _1SJOURN сдуру повешен триггер на INSERT/UPDATE/DELETE
|
|||
|
43
sapphire
10.11.09
✎
23:54
|
(41) Для импорта документов
|
|||
|
44
Sadovnikov
10.11.09
✎
23:54
|
(42) И почему это сдуру? У нас, например, висят эти триггера. И как это связано с (40)?
|
|||
|
45
sapphire
10.11.09
✎
23:56
|
(44) А если транзакция оптимистическая?
|
|||
|
46
Sadovnikov
10.11.09
✎
23:56
|
(43) Что-то тебя кидает из строну в сторону... То связывание, то Оракл, то грязное чтение...
|
|||
|
47
Sadovnikov
10.11.09
✎
23:56
|
(45) И что?
|
|||
|
48
sapphire
10.11.09
✎
23:58
|
(46) У Oracle совершенно иная конструкция и концепция получения первых записей.
Можешь возразить? Нет в Pl/SQL предиката TOP. |
|||
|
49
sapphire
10.11.09
✎
23:59
|
(47) Ну а если потом пойдет откат транзакции?
|
|||
|
50
Sadovnikov
10.11.09
✎
23:59
|
(48) Вот про Оракл я вообще ничего не могу возразить - не знаю я его абсолютно. Можешь грузить меня чем хочешь - поверю :)
|
|||
|
51
Sadovnikov
11.11.09
✎
00:00
|
(49) Давай ты как-то поподробнее проблему опишешь? А то у меня такое чуство, что обсуждаем сферического коня...
|
|||
|
52
Лефмихалыч
11.11.09
✎
00:00
|
(38) Select * from table where rownum <= 3;
|
|||
|
53
sapphire
11.11.09
✎
00:00
|
(50) Да нет, грузить я тебя вовсе не собираюсь.
Просто по subj, ведь полно сиквельных диалектов.... |
|||
|
54
sapphire
11.11.09
✎
00:01
|
(52) Молодец
|
|||
|
55
Sadovnikov
11.11.09
✎
00:01
|
(53) Понял :) Еще один буквоед. Прямо как я :)
|
|||
|
56
sapphire
11.11.09
✎
00:05
|
(51) В двух словах - всё банально - дабы не поднимать _1SUPDTS решили создать свою таблицу и писать в неё изменения, тогда, пока триггер отрабатывает запись с IDDOC существует, другая БД в этот момент читает _1SJOURN и видит грязные данные, тянет их к себе. В базе-источники потом идет откат транзакции, и IDDOC освобождется, что приводит к искажению инфы. Да, криво. Да, решаемо и решено.
|
|||
|
57
sapphire
11.11.09
✎
00:07
|
(55) Просто многие привыкли, что хинтом (NOLOCK) можно ограничить себя, егда далеко не всегда.
|
|||
|
58
Sadovnikov
11.11.09
✎
00:10
|
(56) Дык не проблема же? Блокировка на строку на момент считывания данных. И всё. А, не всё. Еще повторная поставка в обмен для очситки базы-приемника.
|
|||
|
59
sapphire
11.11.09
✎
00:13
|
(58) А ты проверь.
|
|||
|
60
sapphire
11.11.09
✎
00:14
|
(58) Да проблем нет. Всё решаемо. Вопрос как?
Тут же всего человек 20 скуль знают. Остальные - статисты. |
|||
|
61
sapphire
11.11.09
✎
00:16
|
Допусти, ну напишем статю как этого избежать. Ребят, и вправду, много писали из рассчета, что это кто-то оценит. Оценили? Нет. Думаешь у Сережи Осипова не было хороших идей? Были. Во что превратилось всё?
|
|||
|
62
Sadovnikov
11.11.09
✎
00:17
|
(59) Чего именно проверить? Несколько лет работает.
(61) Вот не надо про этого... |
|||
|
63
Лефмихалыч
11.11.09
✎
00:17
|
истина имеет сучковатую природу - туго идет...
|
|||
|
64
sapphire
11.11.09
✎
00:22
|
(62) Умный - поймет, дурак - не оценит.
"Работает - и не трогай" (с) |
|||
|
65
sapphire
11.11.09
✎
00:22
|
(63) Но резво входит
|
|||
|
66
los_hooliganos
11.11.09
✎
04:26
|
(25) "Если честно, не представляю, где на практике нужно полное декартово произведение таблиц."
для хитровы***анных расчетов интервалов например. |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |