Itoshiki

Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Keiichi, Цитата: 1) Правильно ли я понял, что первая команда LEFT JOIN и последующие JOIN (без left) - это соответствует сложению условий типа AND ? Т.е. строки 4-6 это одно общее перемножение таблиц с учетом всех трех условий? 1.5) И это большое перемножение таблиц перемножается с еще одним в строке 7 ? | Нет, можно считать, что каждый JOIN работает отдельно. LEFT JOIN dbo.DocText означает "если в таблице DocText существуют записи, соответствующие условиям, объединить с ними, иначе использовать запись null" Цитата: А что делает команда "_view" | Это не команда, в базе данных существует объект с именем "dbo.Document_view", который скорее всего является не таблицей, а выборкой (представлением, view). Цитата: 3) Получается так, что одна и та же таблица берется два раза, но с двумя разными короткими именами: dbo.Document_view d = dbo.Document_view dmain ? | Да. Цитата: 4) что значит написание таблицы в скобках: dbo.[Case] ? | В квадратных скобках пишутся имена объектов, совпадающие с ключевыми словами SQL или содержащие специальные символы (пробелы, иногда русские буквы). Цитата: 5) условия в строках 9-13 идут через оператор AND, т.е. должны выполняться все. Но почему в результатах данного запроса нет DocTypeCode равного "US", но есть "DocTypeCode" равный "AC009", при условии, что изначально в таблице dbo.Document вообще нет такого столбца - DocTypeCode ? | Столбец DocTypeCode находится в представлении Document_view. Каждая запись, получающаяся в результате выполнения SELECT содержит 2 различных столбца DocTypeCode: d.DocTypeCode и dmain.DocTypeCode. Первый относится к "текущему документу", второй - к "оригинальному", соответственно и ограничения выборки на них разные. | Всего записей: 5 | Зарегистр. 03-07-2010 | Отправлено: 22:03 17-07-2010 | Исправлено: Itoshiki, 22:06 17-07-2010 |
|