J'essaie de créer une instruction select pour combiner des valeurs d'ID dupliqués sur des colonnes spécifiques.Comment créer une requête pour combiner deux ou trois lignes pour les ID dupliqués
Ma table est:
ID Name
---------
01 A
01 B
02 C
03 D
Comment puis-je choisir pour obtenir des valeurs telles que: 01 A, B ID: 01. À l'heure actuelle, lorsque j'utilise Select * from Tablename, il répertorie 01 ID pour deux lignes . J'aime le combiner en une seule ligne, le nom devrait être combiné avec une virgule pour les lignes dupliquées.
Nouveau code:
select Name, ID = REPLACE
((select Surname AS [data()]
FROM Mytable
WHERE Name = d. Name
ORDER BY Name FOR XML path('')), ' ', REQUIRED SEPERATOR)
FROM Mytable d
WHERE Name IS NOT NULL
GROUP BY Name
Merci beaucoup!
Tag votre question avec la base de données que vous utilisez. –
J'utilise SQL Server. Merci. –
Il n'y a pas d'opérateur de type 'group_concat' dans SQLServer, donc vous ne pouvez pas le faire directement, mais il existe des méthodes pour y parvenir: https://stackoverflow.com/questions/451415/simulating-group-concat-mysql-function -dans-microsoft-sql-server-2005 – shibormot