• Как написать функции?

    rozhnev
    @rozhnev
    Fullstack programmer, DBA, медленно, дорого
    Используем CTE:

    with cte_orders(row_id, parent_id, group_name) as (
    	select row_id, parent_id, group_name from Orders where row_id = @f
      	union all
      	select O.row_id, O.parent_id, O.group_name 
      	from Orders O 
      	join cte_orders on cte_orders.row_id = O.parent_id
    ) 
    select sum(price) total_pice from cte_orders 
    left join OrderItems on cte_orders.row_id = OrderItems.order_id ;


    T-SQL fiddle
    Ответ написан
    1 комментарий
  • Почему для скриптинга в шелле используется bash а не более современный язык программирования?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Вопрос одновременно дебильный и нормальный.
    Автор просто не может нормально словами написать, чего хочет.
    Для современного поколения, воспитанного ютубой, это нормально.
    Если бы вопрос можно было задать с помощью слов "гы-гы", "круто, чувак" и смайликов, то у него бы все получилось.
    А пока приходится использовать интеллект на принимающей стороне, чтобы понять, что он там мычит.

    А мычит он не про сам шелл, а про используемый в нем скриптовый язык.
    И ответ получается очень простой - для некоторых задач Bash scripting language тупо подходит лучше. Не говоря уже про интеграцию скриптового языка баш в командную оболочку баш, какой никогда не добиться с помощью "обёрток".

    Но при этом для очень многих скриптов используются и другие языки программирования. Никто не стоит с палкой и не бьет по рукам, если ты хочешь написать скрипт на на баше, а на перле или питоне. Но таки да - большой корпус скриптов написание и отлажен на баше, и просто нет смысла переписывать на что-то ещё.

    Так что да - или легаси, или тупо адекватность задаче.

    Апд. В ходе этой дискуссии я сообразил одну очень важную вещь. Язык программирования по определению является вторичным по отношению к командной оболочке. Главное в баше - это все-таки возможность запускать команды и позволять им взаимодействовать друг с другом. А язык уже построен вокруг этой основной задачи. Если вы попытаетесь вкрячить этот функционал в какой-то из языков программирования общего назначения, вы испортите и оболочку, и язык.
    Ответ написан
    21 комментарий
  • Как решить Марианскую впадину в познаниях математики?

    raydac
    @raydac
    очень ленивый программист
    программирование это исключительно инструмент, говорить "я люблю программировать" звучит примерно так же как "я люблю махать зубилом", "я любуюсь бензопилой" или "я тащусь от плоскогубцев"
    Ответ написан
    4 комментария
  • Предложите аналог disk-o для убунту?

    @pfg21
    ex-турист
    вариант1: платный аккаунт и официальный вебдав. монтировать через davfs2
    вариант2: MARC-FS - FUSE filesystem attempt for Mail.Ru Cloud
    вариант3: WebDavMailRuCloud - конвертор вебдав в протокол облака маилру. писано под .net так что под линукс потребует mono. ну и монтирование через davfs2.

    иных монтировок пока не знаю.
    есть еще вариант с синхронизатором rclone и плагин к тоталкомандеру (под винцо).
    Ответ написан
    6 комментариев