Ответы пользователя по тегу SQL
  • Как мне выполнить sql запрос?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Необходимо создать третью таблицу, соединительную Moneys-Posts, в которой каждой такой реальной паре соответствует уникальная запись money_id - post_id. Это вы можете прочесть в ЛЮБОЙ книге по SQL.
    И совершенно ни к чему тут тэг python, он никакого отношения к сути вопроса не имеет.
    Ответ написан
    1 комментарий
  • Как оптимально получить материнские элементы из базы?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Элдор Суванов, почитайте статью. Там рассмотрены основные варианты структур, реализующих решение вашей проблемы, соответствуюзих им классов и соответствующих атрибутам этих классов запросов sql.
    spoiler
    Вы должны были сначала поискать, потом сюда писать вопрос. Публиковать вопросы, ответ на которые легко найти поиском в интернете, запрещено (п.2.2 Регламента). Я, к примеру, нашел за 5 секунд по запросу «sql цепочка родителей»
    Ответ написан
  • Можно ли хранить состояние выполнения курса в python pycorn2 и продолжить выполнение с момента ошибки?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Полагаю, без переделки скрипта не обойтись. Кмк, есть два схожих пути:
    1. Скрипт должен уметь: на каждом этапе вычислений фиксировать состояние этапа, и уметь найти крайний этап и продолжить с него. Что-то вроде машины состояний. Тут можно и в базу писать.
    2. Скрипт должен быть разделен на несколько фрагментов - подпрограмм, и результаты каждого отдельного скрипта-подпрограммы фиксируются, и для каждого должна быть возможность повторить. Фактически, вариант первого, но с нюансом, что это может быть не единый скрипт, а цепочка слабо связанных скриптов.

    Вопрос в том, как мелко надо «порубить» исходный большой скрипт.

    Да, в случае взаимодействия с внешними ресурсами надо учитывать способность этих ресурсов восстановить соединение или создать новое с учетом состояния основного скрипта.
    Ответ написан
    Комментировать
  • Есть ли программа, сервис, модуль для Excel, Calc для копирования из электронной таблицы в SQL?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Knime.
    Бесплатно. Есть русское комьюнити. Есть интерфейсы к почти любым sql и nosql бд. Открывает и пишет xlsx, csv, всё вот это вот. Можешь делать с «колонками и строчками» что угодно.
    Есть куча аналолитических модулей, логика, циклы и всё такое. Есть возможность создавать вставки на java, js, python и т.п. Можно поднять сервак и выполнять удаленно. Можно десктоп приложение.

    Только надо влиться в процесс. Там несколько нетривиально всё, я например с третьего подхода фишку просёк.
    Ответ написан
    1 комментарий
  • Вывод подписки на фильмы из БД?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Вывод подписки на фильмы из БД?

    Нет.
    Ответ написан
    Комментировать
  • Как правильно оформить sql-запрос чтобы он был читаемый?

    phaggi
    @phaggi
    лужу, паяю, ЭВМы починяю
    Тело with в скобках я бы сдвинул на таб вправо, и странные запятые в начале строк убрал бы взад.
    Также inner join вправо на таб вместе с on- потому что оно вместе с первой таблицей является подуровнем from.
    Но вообще это вкусовщина, и если требований не зафиксировано где-нибудь в ВНД, то хоть в одну строчку пиши всё...
    Как-то
    так
    with sum_bon as
    (
        select 
            worker_ref_id, 
            employee_title, 
            sex, 
            sum(bonus) as sbon 
        from 
            sf_employee as sfe
            inner join sf_bonus as sfb
            on sfe.id=sfb.worker_ref_id
        group by 
            employee_title, 
            sex, 
            worker_ref_id
    )
    
    select 
        sum_bon.employee_title, 
        sum_bon.sex, 
        avg(sfe.salary+sbon) compensation 
    from 
        sf_employee as sfe
        inner join sum_bon
        on sfe.id=sum_bon.worker_ref_id
    group by 
        sum_bon.employee_title,
        sum_bon.sex
    Ответ написан
    Комментировать
  • При выводе данных в Excel из SQL не выводятся имена столбцов?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Сначала разберись, что именно происходит в приведённом коде. Прям распиши построчно себе, что и зачем делается.
    А затем надо в этот код добавить запись строки с именами столбцов перед записью самих столбцов.
    Имена столбцов можно получить из БД запросом типа:
    select *
    from INFORMATION_SCHEMA.COLUMNS
    where TABLE_NAME='tableName'
    Ответ написан
  • Как в pandas лаконично записать множество агрегатных функций с условиями?

    phaggi
    @phaggi Куратор тега Python
    лужу, паяю, ЭВМы починяю
    Может, что-то около такого? Я весьма плаваю в SQL и не уверен, что он выдаст в итоге...
    import pandas
    
    df = pandas.DataFrame()
    df['группы'] = ['a', 'a', 'a', 'b', 'b', 'c', 'c', 'c', 'c', 'd', 'd']
    df['ящиков'] = [1, 11, 3, 11, 5, 6, 11, 8, 9, 10, 11]
    df['ситуация'] = [0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1]
    print(df[df['ситуация'] == 1].groupby('группы').count())
    print(df[df['ситуация'] == 0].groupby('группы').sum())
    Ответ написан
    Комментировать