Oui, nous pouvons ajouter une colonne à une table à partir d'une autre table. Créons d'abord deux tables. La requête pour créer la table est la suivante -
mysql> create table FirstTable -> ( -> UserId int, -> UserName varchar(20) -> ); Query OK, 0 rows affected (1.48 sec)
Créez maintenant la deuxième table. La requête pour créer la deuxième table est la suivante -
mysql> create table SecondTable -> ( -> UserId int, -> UserAge int -> ); Query OK, 0 rows affected (1.57 sec)
Maintenant, ajoutez la colonne d'âge à la première table. Commencez par ajouter une colonne Age, puis utilisez la commande UPDATE pour définir cette colonne Age sur la colonne UserAge de SecondTable. La requête est la suivante -
mysql> ALTER TABLE FirstTable ADD COLUMN Age TINYINT UNSIGNED DEFAULT 0; Query OK, 0 rows affected (1.53 sec) Records: 0 Duplicates: 0 Warnings: 0
Maintenant, c'est la requête qui met à jour la première table pour définir la colonne Age sur la colonne UserAge de SecondTable. La requête est la suivante -
mysql> UPDATE FirstTable tbl1 -> INNER JOIN SecondTable tbl2 ON tbl1.UserId = tbl2.UserId -> SET tbl1.Age = tbl2.UserAge; Query OK, 0 rows affected (0.00 sec) Rows matched: 0 Changed: 0 Warnings: 0
Vérifiez maintenant la description de la première table à l'aide de la commande DESC. La requête est la suivante -
mysql> desc FirstTable;
Ce qui suit est le résultat montrant que nous avons ajouté avec succès une colonne d'une autre table -
+----------+---------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+---------------------+------+-----+---------+-------+ | UserId | int(11) | YES | | NULL | | | UserName | varchar(20) | YES | | NULL | | | Age | tinyint(3) unsigned | YES | | 0 | | +----------+---------------------+------+-----+---------+-------+ 3 rows in set (0.53 sec)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!