J'essaie de trouver un moyen de combiner deux colonnes en une, mais continuez à obtenir la valeur «0» dans la colonne à la place de la combinaison des mots.
Voici ce que j'ai essayé ainsi que d'autres:
SELECT column1 + column2 AS column3
FROM table;
SELECT column1 || column2 AS column3
FROM table;
SELECT column1 + ' ' + column2 AS column3
FROM table;
Quelqu'un pourrait-il me faire savoir ce que je fais de mal?
Réponses:
Je suppose que vous utilisez MySQL où l'
+
opérateur fait des ajouts, avec une conversion silencieuse des valeurs en nombres. Si une valeur ne commence pas par un chiffre, la valeur convertie est0
.Alors essayez ceci:
Deux façons d'ajouter un espace:
la source
sql server 2005
et cela me donne une erreur commeIncorrect syntax near ')'.
Essayez ça, ça marche pour moi
la source
C'est du travail pour moi
la source
C'est la seule solution qui fonctionnerait pour moi, lorsque j'avais besoin d'un espace entre les colonnes en cours de fusion.
la source
Pour les fans de MySQL, j'aime la
IFNULL()
fonction. D'autres réponses suggèrent ici des fonctionnalités similaires avec laISNULL()
fonction dans certaines implémentations. Dans ma situation, j'ai une colonne de descriptions qui estNOT NULL
, et une colonne de numéros de série qui peuvent êtreNULL
Voici comment je les ai combinés dans une colonne:Mes résultats suggèrent que les résultats de la concaténation d'une chaîne avec des
NULL
résultats dans un fichierNULL
. J'ai obtenu la valeur alternative dans ces cas.la source
Si vous travaillez
Oracle
alors:OU
Si vous travaillez sur MySql, alors:
la source
J'ai utilisé cette façon et c'est le meilleur pour toujours. Dans ce code, null également géré
Essaye ça...
la source
la source
la source