Яка альтернатива Instr у SQL Server?

0 Comments

В Oracle функція INSTR повертає позицію підрядка в рядку та дозволяє вказати початкову позицію та те, яке входження знайти. У SQL Server ви можете використовувати Функція CHARINDEX що дозволяє вказати початкову позицію, але не входження, або ви можете використовувати функцію, визначену користувачем.

Інший спосіб зробити це — за допомогою функції на кшталт InStr під назвою CHARINDEX у SQL Server наступним чином:

  • ВИБЕРІТЬ РЕГІСТ.
  • WHEN CHARINDEX('abc', [tblA]. col1) > 0 THEN [tblA]. col1.
  • ІНШЕ ''
  • КІНЕЦЬ.
  • З табл.

Функція INSTR шукає в рядку підрядок і повертає ціле число, яке вказує на позицію символу в рядку, який є першим символом у цьому випадку. Функція SUBSTR повертає частину рядка, починаючи з позиції символу, довжина substring_length символів.

Функція LOCATE() повертає позицію першого входження підрядка в рядок. Функція INSTR() повертає позицію першого входження рядка в інший рядок.

Функція SUBSTRING() виділяє підрядок із рядка (починаючи з будь-якої позиції). Примітка. Позиція першого символу в рядку дорівнює 1. Примітка. Позиція останнього символу в рядку дорівнює -1. Примітка. Функції SUBSTR() і MID() дорівнюють функції SUBSTRING().

В Oracle функція INSTR повертає позицію підрядка в рядку та дозволяє вказати початкову позицію та те, яке входження знайти. У SQL Server ви можете використовувати функцію CHARINDEX, яка дозволяє вказати початкову позицію, але не входження, або ви можете використовувати функцію, визначену користувачем.