loading..
Русский    English
15:23
листать

Функция REVERSE

Эта функция переворачивает строку, как бы читая ее справа налево. То есть результатом запроса

Консоль
Выполнить
  1. SELECT REVERSE('abcdef');
будет fedcba. Если бы отсутствовала функция RIGHT, то запрос

Консоль
Выполнить
  1. SELECT RIGHT('abcdef', 3);
можно было бы равносильно заменить запросом

Консоль
Выполнить
  1. SELECT REVERSE(LEFT(REVERSE('abcdef'), 3));

Польза этой функции в следующем. Пусть нам требуется определить позицию не первого, а последнего вхождения некоторого символа (или последовательности символов) в строке. Вспомним пример, в котором мы определяли позицию первого символа а в названии корабля California:

Консоль
Выполнить
  1. SELECT CHARINDEX('a', name) first_a
  2. FROM Ships
  3. WHERE name = 'California';

Определим теперь позицию последнего вхождения в это название символа а. Функция CHARINDEX('a', REVERSE(name)) позволит найти эту позицию, но справа. Для получения позиции этого же символа слева достаточно написать

Консоль
Выполнить
  1. SELECT LEN(name) + 1 - CHARINDEX('a', REVERSE(name)) first_a
  2. FROM Ships
  3. WHERE name = 'California';
Тэги:
ALL AND AUTO_INCREMENT AVG battles CASE CAST CHAR CHARINDEX CHECK classes COALESCE CONSTRAINT Convert COUNT CROSS APPLY CTE DATEADD DATEDIFF DATENAME DATEPART DATETIME DDL DEFAULT DELETE DISTINCT DML EXCEPT EXISTS EXTRACT FOREIGN KEY FROM FULL JOIN GROUP BY Guadalcanal HAVING IDENTITY IN INFORMATION_SCHEMA INNER JOIN insert INTERSECT IS NOT NULL IS NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker Больше тэгов
Учебник обновлялся
несколько дней назад
https://exchangesumo.com/obmen/WEXRUB-QIWIRUB/ . Выращивание томатов в природных условиях
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.