Comment mettre à jour un tableau en fonction des valeurs d'un autre tableau à la volée?

dba.stackexchange https://dba.stackexchange.com/questions/21152

  •  30-10-2019
  •  | 
  •  

Question

J'ai une table dans le nom d'IPS comme ci-dessous:

CREATE TABLE `ips` (
 `id` int(10) unsigned NOT NULL DEFAULT '0',
 `begin_ip_num` int(11) unsigned DEFAULT NULL,
 `end_ip_num` int(11) unsigned DEFAULT NULL,
 `iso` varchar(3) DEFAULT NULL,
 `country` varchar(150) DEFAULT NULL
) ENGINE=InnoDB

Permet de supposer que j'ai un countryid Champ sur cette table de la table de pays qui est comme ci-dessous:

CREATE TABLE `country` (
 `countryid` tinyint(3) unsigned NOT NULL AUTO_INCREMENT,
 `name` varchar(50) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
 `ordering` smallint(5) unsigned NOT NULL DEFAULT '0',
 `iso` char(2) NOT NULL,
 PRIMARY KEY (`countryid`)
) ENGINE=InnoDB

Il y a environ 100 000 enregistrements dans la table IPS. Y a-t-il une requête pour le scénario suivant:
Vérifier si ips.iso est égal à country.iso, s'il est égal, ajoutez Country.CoutryId à ce dossier. Je ne pouvais penser à aucune façon de le faire. Avez-vous une idée de comment faire cela?

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à dba.stackexchange
scroll top