За последние 24 часа нас посетили 56806 программистов и 1788 роботов. Сейчас ищут 1737 программистов ...

Суммировать 3 таблицы

Тема в разделе "PHP для новичков", создана пользователем greenzlat, 28 апр 2011.

  1. greenzlat

    greenzlat Активный пользователь

    С нами с:
    27 апр 2008
    Сообщения:
    255
    Симпатии:
    0
    Есть 3 таблицы (jan, feb, march) - зарплата за 3 месяца. Нужно вывести таблицу, чтоб по табельному номеру суммировал все 3 таблицы.
    Структура одной из таблиц:

    [sql]CREATE TABLE `zarplata`.`feb` (
    `id` INT( 9 ) NOT NULL AUTO_INCREMENT ,
    `tab_n` INT( 9 ) NOT NULL ,
    `fio` TEXT NOT NULL ,
    `sum` VARCHAR( 9 ) NOT NULL ,
    PRIMARY KEY ( `id` )
    ) ENGINE = MYISAM ;[/sql]

    Подскажите как правильно написать запрос, чтоб посчитать итоговую сумму за 3 месяца у каждого сотрудника?
     
  2. engager

    engager Активный пользователь

    С нами с:
    21 янв 2009
    Сообщения:
    1.106
    Симпатии:
    1
    Дорогой товарищ.
    Во-первых. Учи... учи матчасть!!! Читай теорию реляционных баз данных, конкрентно про нормализацию данных.
    После этого, пока не поздно, переделай структуру своей бд. Твоя задача реализуется всего через одну(!) таблицу.
    Во-вторых. При твоей неправильной структуре это будет выглядеть так:

    [sql]select id, tab, fio, sum(`sum`) from (
    select id, tab, fio, sum from jan
    union all
    select id, tab, fio, sum from feb
    union all
    select id, tab, fio, sum from matrch
    ) where tab='xxx'
    group by id, tab, fio
    [/sql]

    посмотри, и запомни раз и навсегда - ТАК ДЕЛАТЬ НЕЛЬЗЯ! ибо это форменная порнография.
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    engager
    при чем таблицы даже без года =) это трупик а не проект. скорее всего студенческое задачние.
     
  4. greenzlat

    greenzlat Активный пользователь

    С нами с:
    27 апр 2008
    Сообщения:
    255
    Симпатии:
    0
    да не студенческое задание, на работе 3 xls файла есть надо было суммировать. Сделал уже. Спасибо. А по структуре все сливать в одну таблицу указывать месяц, год в отдельных полях да? Я понимаю так.
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    greenzlat
    в самом экселе-то можно было в тыщу раз проще просуммировать =)