ocodice:CREATE TABLE `sessions` ( `id` VARCHAR(255) NOT NULL DEFAULT '', `user` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0', `ip` VARCHAR(50) NOT NULL DEFAULT '', `date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `mac` CHAR(17) NOT NULL DEFAULT '', PRIMARY KEY (`id`), INDEX `sess_idx` (`user`, `ip`, `date`, `mac`), FOREIGN KEY (`user`) REFERENCES `users` (`id`) ON DELETE CASCADE )ENGINE=InnoDB;
Se notate dalla prima alla seconda, ho inserito le INDEX "differentemente".codice:CREATE TABLE `sessions` ( `id` VARCHAR(255) NOT NULL DEFAULT '', `user` MEDIUMINT UNSIGNED NOT NULL DEFAULT '0', `ip` VARCHAR(50) NOT NULL DEFAULT '', `date` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, `mac` CHAR(17) NOT NULL DEFAULT '', PRIMARY KEY (`id`), INDEX `user_idx` (`user`), FOREIGN KEY (`user`) REFERENCES `users` (`id`) ON DELETE CASCADE, INDEX `sess_idx` (`ip`, `date`, `mac`) )ENGINE=InnoDB;
Mi potete dire se quando eseguo le query cambia qualcosa in termini di performance, o una index è una index e basta, non importa come la assegni?

Rispondi quotando