J'ai une question sur la division des valeurs de colonnes dans T-SQL. j'ai
Address_col Nevada,USA Tokyo,Japan Hanoi,Vietnam
Je veux split les valeurs par des virgules
Address_col Country Navada USA Tokyo Japan Hanoi Vietnam
Comment puis je faire ça?
declare @T table (Address_col varchar(20)) insert into @T values ('Nevada,USA'), ('Tokyo,Japan'), ('Hanoi,Vietnam') select left(Address_col, charindex(',', Address_col)-1) as Address_col, stuff(Address_col, 1, charindex(',', Address_col), '') as Country from @T
Mettre à jour:
Diviser une string avec trois parties peut ressembler à ceci: déclarer la table @T (Address_col varchar (20))
insert into @T values ('Nevada,USA,World'), ('Tokyo,Japan,World'), ('Hanoi,Vietnam,World') select parsename(C, 3), parsename(C, 2), parsename(C, 1) from @T cross apply (select replace(Address_col, ',', '.')) as T(C)
Si vous n'avez que deux parties, c'est le plus simple que je puisse penser.
select SUBSTRING (Address_col, 1, CHARINDEX (',', Address_col) -1) en tant que Address_col, SUBSTRING (Address_col, CHARINDEX (',', Address_col) + 1, LEN (Address_col)) en tant que pays