sql >> Databáze >  >> RDS >> Sqlserver

SQL Server 2005 pomocí CHARINDEX() k rozdělení řetězce

Neřekl bych, že je to snadné nebo zřejmé, ale pomocí pouhých dvou pomlček můžete řetězec obrátit a není to příliš těžké:

with t as (select 'LD-23DSP-1430' as val)
select t.*,
       LEFT(val, charindex('-', val) - 1),
   SUBSTRING(val, charindex('-', val)+1, len(val) - CHARINDEX('-', reverse(val)) - charindex('-', val)),
       REVERSE(LEFT(reverse(val), charindex('-', reverse(val)) - 1))
from t;

Kromě toho a možná budete chtít použít split() místo toho.



  1. Jak získat další sloupce, které nejsou v klauzuli GROUP BY v oracle select sql?

  2. Použití pysparku pro připojení k PostgreSQL

  3. jaký dotaz bychom měli použít k rozdělení 1colmnn do více sloupců

  4. Chyba MySQL při vkládání dat obsahujících apostrofy (jednoduché uvozovky)?