8.х Хитрый Запрос

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем KiberMath, 22 сен 2008.

  1. TopicStarter Overlay
    KiberMath
    Offline

    KiberMath Опытный в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    Код:
    "Выбрать
    ПерсонифицированныйПрайс.Покупатель,
    ПерсонифицированныйПрайс.Номенклатура,
    ПерсонифицированныйПрайс.Цена
    ИЗ
    (Выбрать
    ПерсонифицированныйПрайс.Покупатель КАК покупатель,
    ПерсонифицированныйПрайс.Номенклатура КАК номенклатура,
    МАКСИМУМ( ПерсонифицированныйПрайс.Период) КАК период
    ИЗ
    РегистрСведений. ПерсонифицированныйПрайс Как ПерсонифицированныйПрайс
    ГДЕ
    ПерсонифицированныйПрайс <= &КонецПериода
    СГРУППИРОВАТЬ ПО
    ПерсонифицированныйПрайс.Покупатель,
    ПерсонифицированныйПрайс.Номенклатура) КАК ВнешнийЗапрос
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    РегистрСведений. ПерсонифицированныйПрайс КАК  ПерсонифицированныйПрайс
    ПО
    ВложенныйЗапрос.Покупатель =  ПерсонифицированныйПрайс.покупатель И
    ВложенныйЗапрос.Номенклатура =  ПерсонифицированныйПрайс.Номенклатура И
    ВложенныйЗапрос.Период =  ПерсонифицированныйПрайс.Период    "
    

    Расскажите пожалуйста, как это работает...
    В простых запросах не путаюсь, но здесь наколбасили, не могу разобраться что к чему и почему
  2. tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    Нестыковочка....

    По сути:
    самое простое - взять консоль запросов/отчетов, туда внести код, немного подправить под свою конфу и открыть коструктором.

    На деле структура примерно такая:
    1) вложенный запрос, данные которого потом используются для обработки во внешнем запросе
    Код:
    (Выбрать
    ПерсонифицированныйПрайс.Покупатель КАК покупатель,
    ПерсонифицированныйПрайс.Номенклатура КАК номенклатура,
    МАКСИМУМ( ПерсонифицированныйПрайс.Период) КАК период
    ИЗ
    РегистрСведений. ПерсонифицированныйПрайс Как ПерсонифицированныйПрайс
    ГДЕ
    ПерсонифицированныйПрайс <= &КонецПериода
    СГРУППИРОВАТЬ ПО
    ПерсонифицированныйПрайс.Покупатель,
    ПерсонифицированныйПрайс.Номенклатура) КАК Вложенный Запрос
    
    2) Внешний запрос. Две таблицы соединяются. Данные одной из регистра сведений, данные другой - из внутреннего запроса. Соединение по трем полям.

    Код:
     Выбрать
    Справочник.Наименование
    ПерсонифицированныйПрайс.Цена
    ИЗ <Вложенный Запрос>
    
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ
    
    РегистрСведений. ПерсонифицированныйПрайс КАК ПерсонифицированныйПрайс
    ПО
    ВложенныйЗапрос.Покупатель = ПерсонифицированныйПрайс.покупатель И
    ВложенныйЗапрос.Номенклатура = ПерсонифицированныйПрайс.Номенклатура И
    ВложенныйЗапрос.Период = ПерсонифицированныйПрайс.Период
    
    П.С. поверь, это ООООЧЧЧЕНЬ простой запрос. Если хочешь, для примера в личку скину действительно сложный запрос. Даже открывая его конструктором и видя данные, которые он собирает, потратил пару дней на осмысление его работы...
  3. TopicStarter Overlay
    KiberMath
    Offline

    KiberMath Опытный в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    Пасиб, разобрался =)
    А как ты учился языку запросов? Подскажи книженцию. Или может ты на курсах учился, скажи плиз на каких
  4. lazy
    Offline

    lazy Модераторы Команда форума Модератор

    Регистрация:
    1 сен 2007
    Сообщения:
    2.127
    Симпатии:
    4
    Баллы:
    29
    Это опыт нужен. Поищи на просторах сети книженцию "Использование запросов в системе 1С8". В принципе, общая инфа по языку запросов SQL тоже подойдет во первых потому, что похожи(далеко не во всем, разумеется) а во вторых опыт работы с SQL тоже пригодится :)
  5. tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    ну я меня в свое время в институте на Oracle погоняли по SQL. Потом еще немного черпанул пока сайты писал с использованием Mysql...

    ну и курсы по конфигурированию 1С ограничили только тем, что есть в 1С... А закрепил реальной работой с запросами.

    Сам попиши разные запросы под разные задачи (например в типовой поделай отчеты) и через полгода будешь польцы гнуть перед новичками :)
  6. Мастер_миража
    Offline

    Мастер_миража Опытный в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    148
    Симпатии:
    0
    Баллы:
    26
    а меня в институте мало гоняли по запросам

    все задания по скл выполнял зная примерно как составить алгоритм и юзая справку по синтаксису=)
    потом ето все быстро забывается без практики

    мораль такова: юзай справку :unsure:
  7. TopicStarter Overlay
    KiberMath
    Offline

    KiberMath Опытный в 1С

    Регистрация:
    22 сен 2008
    Сообщения:
    61
    Симпатии:
    0
    Баллы:
    26
    Хех. Синтаксиис может и забываеться, а навыки нет )
    Юзаю справку =)

Поделиться этой страницей