• Как правильно получить суммирующую таблицу из двух?

    @kfuntov
    Все валюты есть в обоих таблицах? Или какой-то из валют где-то может не быть?
    Если в ПРИХОДАХ есть все виды валют, то можно так:
    SELECT
           p.валюта as ВАЛЮТА,
           p.tot as ПРИХОДОБЩИЙ,
           r.tot as РАСХОДОБЩИЙ,
           (p.tot - r.tot) as ОСТАТОК
    FROM 
        ( SELECT SUM(приход) as tot, валюта FROM ПРИХОДЫ GROUP BY валюта ) as p
      LEFT JOIN 
          ( SELECT SUM(расход) as tot, валюта FROM РАСХОДЫ GROUP BY валюта ) as r
         ON r.валюта = p.валюта


    Если в "ПРИХОДАХ" может не быть каких-то валют,то нужен FULL JOIN, вместо LEFT.
    MySQL его сама не умеет, но способов его реализовать несколько, например:
    UNION LEFT и RIGHT JOIN-ов - самый короткий/понятный/красивый вариант, но при большом количестве валют может начать тормозить, так как UNION делает сортировку.
    SELECT
           p.валюта as ВАЛЮТА,
           p.tot as ПРИХОДОБЩИЙ,
           r.tot as РАСХОДОБЩИЙ,
           (p.tot - r.tot) as ОСТАТОК
    FROM 
        ( SELECT SUM(приход) as tot, валюта FROM ПРИХОДЫ GROUP BY валюта ) as p
      LEFT JOIN 
          ( SELECT SUM(расход) as tot, валюта FROM РАСХОДЫ GROUP BY валюта ) as r
         ON r.валюта = p.валюта
    UNION
    SELECT
           p.валюта as ВАЛЮТА,
           p.tot as ПРИХОДОБЩИЙ,
           r.tot as РАСХОДОБЩИЙ,
           (p.tot - r.tot) as ОСТАТОК
    FROM 
        ( SELECT SUM(приход) as tot, валюта FROM ПРИХОДЫ GROUP BY валюта ) as p
      RIGHT JOIN 
          ( SELECT SUM(расход) as tot, валюта FROM РАСХОДЫ GROUP BY валюта ) as r
         ON r.валюта = p.валюта

    Если производительность в данном месте требует оптимизации (советую сильно подумать, прежде, чем отвечать "да"), то можно усложнять запрос, делая его быстрее.
    Например, заменить UNION на UNION ALL и во второй части не выбирать значения, которые есть в первой.
    Ответ написан
    3 комментария
  • Какя фриланс-биржа самая акутальная в рунете?

    tin-iven
    @tin-iven
    Фрилансер до костей
    Считаю, что актуальность определяет не отношение к бирже фрилансеров, а количество заказов на ней. Так или иначе - пусть на бирже будет миллион фрилансеров - но без заказов эта биржа будет мертвой.

    На данный момент ситуация на рынке такова (можете воспринимать как рейтиг):
    1. free-lance.ru - были и остаются лидерами. Проектов у них реально много. Ежедневно 1300-1500 штук.
    2. freelance.ru - спасибо домену. Лично я ничего особого не вижу, но так или иначе тут 450-500 проектов ежедневно.
    3. weblancer.net - эта биржа самая древняя - начинали они первыми. Сейчас просели и имеют примерно 200-220 проектов.
    4. freelancehunt.com - на этой бирже примерно 180 проектов. Главное, что отличает ее от остальных - отсутствие платных аккаунтов или абонплаты.
    5. freelansim.ru - количество проектов ежедневно составляет примерно 50. Фишка биржи - хабракорни.

    Вот такая пятерка лидеров. Проверить цифры можно тут: lookubra.x01d.com/stats#stat=compare - отключите лишнее и увидите картину. Количество проектов брались без учета выходных, так как на выходных активность существенно падает.

    Итог: чтобы не говорили про free-lance.ru, они были и остаются лидерами. И как бы это не было печальным, были и остаются самыми жадными - могут себе это позволить. Любая из приведенных выше бирж имеют ограничение по бесплатным ответам на проекты, кроме freelancehunt.com. Судя по всему "приятной" сейчас будут считать ее? Мне кажется пора смирится с тем что любая площадка такого типа не может быть бесплатной. Остается только надеяться на умеренность аппетитов и лояльность по отношению к пользователям.
    Ответ написан
    6 комментариев
  • Есть ли плагин для генерации css из html sublime text?

    Плагина, увы, нет.
    Есть такая приблуда.
    Ответ написан
    Комментировать
  • За какое время, вы бы решили данную задачу?

    @lookid
    Это задача на знание стека технологий PHР-программиста. Тут больше "модулей накачать, собрать, настроить, развернуть БД", нежели "решать или кодить".
    Ответ написан
    Комментировать
  • Вопросы по PHP: ООП, шаблонизатор

    @kaasius
    Судя по вашему вопросу, что-либо вам советовать нету смысла - вы плохо понимаете, что такое разработка ПО в принципе.
    Есть page.php и рядом лежит classPage.php Я делаю инклуд в page.php. Ну и само собой там классы.

    Вот это предложение - оно решает всё. Пока не поймете, что тут не так - советовать вам бессмысленно. Пишите самостоятельно, как хотите, хватайте инъекции, имейте проблемы с развитием кода. Когда вы через это пройдете - можно будет вам посоветовать фреймворк.
    Ответ написан
    4 комментария
  • Закрасить часть фигуры "Инь-Янь" c#?

    Mrrl
    @Mrrl
    Заводчик кардиганов
    Проще всего чередовать рисование чёрным и белым - нарисовать чёрный полукруг, потом 4 круга и внешнюю окружность. Как-то так:

    private static void DrawYinYang(Graphics gr,int xctr,int yctr,int rmax,int rint,int ysmall,int rsmall) {
                Brush white=Brushes.White;
                Brush black=Brushes.Black;
                Pen BlackPen=new Pen(Color.Black,2*(rmax-rint));
    
                gr.FillPie(black,xctr-rmax,yctr-rmax,2*rmax,2*rmax,-90,180);
                gr.FillEllipse(white,xctr-rint/2,yctr-rint,rint,rint);
                gr.FillEllipse(black,xctr-rint/2,yctr,rint,rint);
                gr.FillEllipse(white,xctr-rsmall,yctr+ysmall-rsmall,2*rsmall,2*rsmall);
                gr.FillEllipse(black,xctr-rsmall,yctr-ysmall-rsmall,2*rsmall,2*rsmall);
                double rcircle=(rmax+rint)/2.0;
                gr.DrawEllipse(BlackPen,(float)(xctr-rcircle),(float)(yctr-rcircle),(float)(2*rcircle),(float)(2*rcircle));
            }

    Если же хочется именно закрасить криволинейную фигуру, надо изучать, что такое GraphicPath, и использовать FIllRegion. Но я так не пробовал.
    Ответ написан
    Комментировать
  • Почему не работает vertical-align для inline-block?

    vmpartner
    @vmpartner
    In code we trust
    Почему не работает читайте здесь
    Как вариант посмотрите такое решение
    Ответ написан
    3 комментария
  • Пауза в макросе фотошоп для задания имени файла

    Hikkomori
    @Hikkomori
    Я так понимаю, что речь идёт об операциях ?
    Если да, то там можно поставить такую типа галочку, чтобы на выбранном этапе выходило диалоговое окно, как если бы вы выполняли этот этап самостоятельно.

    Это оно
    24ll945.jpg
    Ответ написан
    2 комментария
  • Лучший CSS фреймворк для Flat дизайну

    VitalySorokin
    @VitalySorokin
    тружусь во благо «ТМ»
    Не стоит! Верстай сам!
    Ответ написан
    Комментировать
  • Какую CMS использовать для лёгкого сайта-визитки?

    Вы уверены что на этом сайте нужна CMS. Если речь идет о 3-5 страницах, не проще ли на HTML`е накидать и все. Тогда будет достаточно самого дешевого хостинга и быстродействие будет на уровне: "сервер отдал статику"
    Ответ написан
    Комментировать
  • Когда в PHP использовать интерфейсы, а когда абстрактные классы?

    miraage
    @miraage
    Старый прогер
    К примеру, нужно написать класс для работы с кэшем.

    У нас есть класс Cache, который будет делать всю грязную работу. Он в свою очередь будет использовать библиотеку под определенный тип кэша (memcached, eaccelerator, ...). Для согласованности, библиотека должна реализовать интерфейс cacheInterface, чтобы класс Cache мог нормально работать. Вот небольшой пример.

    Интерфейс для библиотеки:
    Ответ написан
    3 комментария
  • Как пройти внезапное собеседование в IT-компанию?

    @Monca
    Произвести хорошее впечатление очень важно, показать свою заинтересованность.
    Здесь пишут, что это работодателю нужен работник — это не так. Обе стороны заинтересованы.
    Ответ написан
    1 комментарий