J'ai un tableau avec des données 1/1
à 1/20
dans une colonne. Je veux que la valeur 1 à 20 soit après que '/' (barre oblique) soit mise à jour dans une autre colonne de la même table dans SQL Server.
Exemple:
La colonne a la valeur 1/1,1/2,1/3...1/20
nouvelle valeur de colonne 1,2,3,..20
c'est-à-dire je souhaite mettre à jour cette nouvelle colonne
Merci d'avance...!
Essaye ça:
UPDATE YourTable
SET Col2 = RIGHT(Col1,LEN(Col1)-CHARINDEX('/',Col1))
Veuillez trouver que la requête ci-dessous divise également la chaîne avec un délimiteur.
Select Substring(@String1,0,CharIndex(@delimeter,@String1))
SELECT SUBSTRING(ParentBGBU,0,CHARINDEX('-',ParentBGBU,0)) FROM dbo.tblHCMMaster;
Je sais que cette question est spécifique au serveur SQL, mais j'utilise postgresql et suis tombé sur cette question, donc pour quiconque dans une situation similaire, il y a la fonction split_part(string text, delimiter text, field int)
.
Peut-être quelque chose comme ça:
D'abord quelques données de test:
DECLARE @tbl TABLE(Column1 VARCHAR(100))
INSERT INTO @tbl
SELECT '1/1' UNION ALL
SELECT '1/20' UNION ALL
SELECT '1/2'
Alors comme ça:
SELECT
SUBSTRING(tbl.Column1,CHARINDEX('/',tbl.Column1)+1,LEN(tbl.Column1))
FROM
@tbl AS tbl