У меня есть одна таблица со столбцами, состоящими из идентификатора, имени, описания и подсчета. Каждая строка в этой таблице имеет имя, соответствующее другой таблице.
Например, одна из моих строк имеет название "карцинома". Существует еще одна таблица, которая называется "карцинома".
Я хотел бы, чтобы количество столбцов первой таблицы обновлялось каждый раз, когда в строку добавляется столбец "карцинома". Например, если таблица "карцинома" имеет 4 строки, я хочу, чтобы столбец count в первой таблице имел значение 4 для карциномы. Есть ли способ автоматического обновления столбца подсчета при вставке или удалении строки из второй таблицы?
Идентификатор имени
1 Карцинома 0
Имя идентификатора
1 Плоская ячейка
2 Adeno
3 Базальная клетка
4 Ductal cell
Вам нужно создать триггер для каждой из вторичных таблиц. Например:
DELIMITER //
CREATE TRIGGER carcinoma_increment AFTER INSERT ON carcinoma
FOR EACH ROW
BEGIN
UPDATE firsttable
SET count = count + 1
WHERE name = 'Carcinoma';
END;
DELIMITER ;
Вы также можете использовать триггеры DELETE
для таблиц.
count(*)
из других таблиц.