@symnoob

Как решить задачу в Mysql, Сравнение двух Таблиц?

Как решить задачу в Mysql, Сравнение двух Таблиц?

Есть две таблицы, по сути идентичные:

-- ----------------------------
-- Table structure for `user`
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(12) NOT NULL AUTO_INCREMENT,
  `username` varchar(25) DEFAULT NULL,
  `email` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Table structure for `user_log`
-- ----------------------------
DROP TABLE IF EXISTS `user_log`;
CREATE TABLE `user_log` (
  `id` int(12) NOT NULL,
  `username` varchar(25) DEFAULT NULL,
  `email` varchar(50) DEFAULT NULL,
  `lastedit` date DEFAULT NULL,
  PRIMARY KEY (`id`),
  CONSTRAINT `user_log_ibfk_1` FOREIGN KEY (`id`) REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


во второй есть колонка для даты, когда были сделаны изменения.
при поиске, должны выходить изменения и оригинал, так чтобы было видно что на что поменено.

и должен быть поиск по полям. (Например показать только те внесения где был изменён user или e-mail)
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
Compolomus
@Compolomus
Комполом-быдлокодер
Для связи нужно будет поле, я так понимаю id подойдёт
Запрос вида
select * from user as u join user_log as l using(id) where u.email != l.email
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы