Assemblage utiliser dans CONCAT
J'essayais de concatonate 2 colonnes avec un espace entre les deux et a obtenu un classement d'erreur:
SELECT DISTINCT
p.PERSON_ID,
p.ID_NUMBER,
CONCAT(p.FULLNAMES, CONCAT(' ', p.SURNAME)) AS NAME,
o.ORG_NAME,
w.WARD_DESCRIPTION AS WARD,
ess.DESCRIPTION AS SECTOR
Ne peut pas résoudre le conflit de classement entre "SQL_Latin1_General_CP1_CI_AS" et "Latin1_General_CI_AS" dans la méthode concat opération
Le classement à la fois de la délinquance des colonnes dans ma base de données est: Latin1_General_CI_AS
Alors que j'essayais de rassembler les espaces de ce classement, mais je n'ai aucune idée de comment faire cela. Ma tentative:
CONCAT(p.FULLNAMES, (CONCAT((COLLATE Latin1_General_CI_AS = ' '), p.SURNAME))) AS NAME,
ou quelque chose?
OriginalL'auteur Carel | 2014-05-15
Vous devez vous connecter pour publier un commentaire.
Vous mettez les ASSEMBLER après chaque domaine, à savoir dans le pire des cas:
Vous pouvez probablement éviter de rassembler les littérale par rassembler par DATABASE_DEFAULT, à savoir
SELECT DISTINCT CONCAT(p.FULLNAMES COLLATE DATABASE_DEFAULT, (CONCAT(' ', p.SURNAME COLLATE DATABASE_DEFAULT))) AS NAME FROM Person p
qui pourrait gâcher votre <commande>. Il est préférable de changer l'espace de le même classement que les autres colonnes
Bon point.
OriginalL'auteur StuartLC
Cela permettra de résoudre votre problème:
L'espace est d'obtenir le même classement par défaut de la base de données, donc il doit avoir le même classement que vos colonnes. Un peu ridicule à mon avis
OriginalL'auteur t-clausen.dk
J'ai résolu ce problème en utilisant simplement la méthode concat opérateur:
OriginalL'auteur user764754