SQL - Convertir la valeur NULL à la chaîne.vide
Je suis tente d'effectuer une mise à niveau de l'entretien sur notre base de données. J'ai besoin de se déplacer de 3 colonnes de données à partir de toutes les lignes d'un tableau et insérer des données que de nouvelles lignes dans une table.
INSERT INTO [dbo].[SnmpSettings]([NetworkDiscoveryId], [RoCommunities], [RwCommunities])
SELECT id, Ro_Community, RW_Communities
FROM [dbo].[Network_Discovery]
Le code ci-dessus va fonctionner très bien, mais Ro_Community et RW_Communities autoriser les valeurs NULL, où, comme RoCommunities et RwCommunities ne pas autoriser les valeurs NULL. Comment dois-je convertir des valeurs Null à la chaîne vide et ensuite l'insérer dans ma nouvelle table?
EDIT:
INSERT INTO [dbo].[SnmpSettings]([NetworkDiscoveryId], [RoCommunities], [RwCommunities])
SELECT id, Ro_Community, RW_Communities
ISNULL(Ro_Community,'')
FROM [dbo].[Network_Discovery]
Msg 102, Level 15, State 1, Line 27
Incorrect syntax near 'Ro_Community'.
- Si c'est Sql Server, utilisez isnull(Ro_Community, ")
- Je m'excuse pour la façon naïve que je suis dans ce peu de travail. J'ai édité dans ma tentative de suivre vos instructions, mais il ne compile pas.
SELECT id, isnull(Ro_Community, ''), isnull(RW_Communities, '')
Vous devez vous connecter pour publier un commentaire.
ou
Remarque:
COALESCE
est pris en charge depuis SQL Server 2005. Il fait partie de la norme ANSI-92 SQL standard, de sorte que beaucoup suggèrent qu'elle préféré surISNULL
. Cependant il existe également des rapports que c'est un peu plus lent.ISNULL
est moyen plus rapide pour moi.