За последние 24 часа нас посетили 115790 программистов и 3042 робота. Сейчас ищут 1633 программиста ...

Выборка и подсчёт значений в таблицах MySql

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

  1. bkm

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

    С нами с:
    22 окт 2009
    Сообщения:
    299
    Симпатии:
    0
    есть две таблицы

    table1 table2

    id id_t

    1 1
    2 2
    3 3
    4 3
    5 2

    результат для 1 = 1, 2 = 2, 3 = 2, 4 = 0, 5 = 0

    надо взять id из table1 и подсчитать количество id_t равных id в таблице table2 и так сделать для каждого id таблицы table1

    Интересует, как можно упростить такой запрос? не хотелось бы использовать while, да и количество запросов к базе возрастает. Результат будет на главной странице сайта, которая самая популярная по заходам, так что нагрузка, думаю, будет не малая.

    Может проще в table1 создать столбец в котором хранить точное количество id_t из table2?
     
  2. Benjamin

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

    С нами с:
    23 янв 2009
    Сообщения:
    154
    Симпатии:
    0
    Адрес:
    Тула
    Сделайте экспорт структуры таблиц.
     
  3. voxel

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

    С нами с:
    8 сен 2010
    Сообщения:
    19
    Симпатии:
    0
    [sql]SELECT t1.id, count(*) FROM table1 t1
    JOIN table2 t2 ON t2.id_t=t1.id
    GROUP BY t1.id[/sql]