SSMS
 sql >> Teknologi Basis Data >  >> Database Tools >> SSMS

ekstrak teks dari kolom dan salin ke kolom baru

Dengan asumsi bahwa saya harus mengekstrak dari kolom string kemunculan pertama dari nilai tanggal/waktu yang memiliki format berikut DD/MM/YYYY HH:SS (panjang =16 karakter) maka saya akan menggunakan PATINDEX bukannya CHARINDEX demikian:

SELECT  *, 
    SUBSTRING(
        x.StringColumn, 
        NULLIF(PATINDEX('%[0-1][0-9]/[0-3][0-9]/[0-9][0-9][0-9][0-9][ ][0-9][0-9]:[0-9][0-9]%', x.StringColumn), 0), 
        16) AS DateTimeExtracted
FROM    (VALUES 
    ('Bogdanel 01/02/2017 03:04 hei ho'),
    ('Georgel 05/06/2017 07:08 danga langa'),
    ('Suna''n asfintit 09/11/2018 11:22 hei talanga'),
    ('Danga langa. Pai da.'),
    ('   '),
    (NULL)
) x(StringColumn)

Hasil:

StringColumn                                 DateTimeExtracted
-------------------------------------------- -----------------
Bogdanel 01/02/2017 03:04 hei ho             01/02/2017 03:04
Georgel 05/06/2017 07:08 danga langa         05/06/2017 07:08
Suna'n asfintit 09/11/2018 11:22 hei talanga 09/11/2018 11:22
Danga langa. Pai da.                         NULL
                                             NULL
NULL                                         NULL


  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. Tidak Dapat Terhubung ke Plesk v12 SQL Server dari Jarak Jauh dari SQL Server Management Studio

  2. SSMS 18.8 mogok saat memasang kembali tab

  3. Mengapa SSMS mengubah prosedur tersimpan saya (memformat ulang, mengubah exec menjadi EXECUTE, dll.)?

  4. Objek SMO SSMS:Dapatkan hasil kueri

  5. SSAS DB tidak terlihat di Studio Manajemen tetapi dapat dilihat di Excel