Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Używanie PATINDEX do znajdowania wzorców o różnej długości w T-SQL

Pisałem o tym jakiś czas temu.Wyodrębnianie numery z serwerem SQL

Declare @Temp Table(Data VarChar(100))

Insert Into @Temp Values('some text 456.09 other text')
Insert Into @Temp Values('even more text 98273.453 la la la')
Insert Into @Temp Values('There are no numbers in this one')

Select Left(
             SubString(Data, PatIndex('%[0-9.-]%', Data), 8000),
             PatIndex('%[^0-9.-]%', SubString(Data, PatIndex('%[0-9.-]%', Data), 8000) + 'X')-1)
From   @Temp


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak grupujesz według dowolnego przedziału czasowego?

  2. Jak przechowywać dane wyjściowe MSSQL PRINT w zmiennej?

  3. Połącz wiele wierszy

  4. SQL:Używanie DATEADD z bigintami

  5. @@ROWCOUNT — Uzyskaj liczbę wierszy, których dotyczy ostatnia instrukcja w SQL Server