Функция RIGHT () в MySQL

Опубликовано: 10 Августа, 2021

Функция RIGHT () в MySQL используется для извлечения указанного количества символов из правой части данной строки. Второй аргумент используется, чтобы решить, сколько символов он должен вернуть.

Синтаксис:

ВПРАВО (только страница)

Параметр: эта функция принимает два параметра, как указано выше и описано ниже:

  • str: Данная строка, с правой стороны которой должно быть извлечено количество символов.
  • len : количество извлекаемых символов. Если этот параметр больше, чем количество символов в строке, эта функция вернет фактическую строку.

Returns: возвращает количество символов из строки (начиная справа).

Пример-1: Применение функции RIGHT () к заданной строке.

ВЫБРАТЬ ВПРАВО ("geeksforgeeks", 4) AS Right_Str;

Выход :

Right_Str
ээкс

Пример-2: Применение функции ВПРАВО () к числу.

ВЫБРАТЬ ВПРАВО (12345678, 4) AS Right_Num;

Выход :

Right_Num
5678

Пример-3: Применение функции RIGHT () к заданной строке, когда len> символов в строке.

ВЫБРАТЬ ВПРАВО ("geeksforgeeks", 20) AS Right_Str;

Выход :

Right_Str
выродки

Пример-4: Применение функции RIGHT () для поиска фамилии игрока в таблице. Чтобы продемонстрировать создание таблицы с именем Player .

СОЗДАТЬ ТАБЛИЦУ Player (

    Player_id INT AUTO_INCREMENT,  
    Player_name VARCHAR (100) NOT NULL,
    Playing_team VARCHAR (20) НЕ NULL,
    ПЕРВИЧНЫЙ КЛЮЧ (Player_id)

);

Теперь вставим некоторые данные в таблицу Player:

ВСТАВИТЬ В  
    Игрок (Player_name, Playing_team)

ЗНАЧЕНИЯ
    ('Вират Кохли', 'RCB'),
    ('Рохит Шарма', 'Мичиган'),
    ('Динеш Картик', 'ККР'),
    ('Шреяш Айер', 'Округ Колумбия'),
    («Дэвид Уорнер», «СРЗ»),
    ('Стив Смит', 'RR'),
    ('Андре Рассел', 'KKR'),
    ('Jasprit Bumrah', 'Мичиган'),
    («Рисаб Пант», «Округ Колумбия»);

Итак, таблица игроков:

mysql> ВЫБРАТЬ * ИЗ игрока;
+ ----------- + ---------------- + -------------- +
| Player_id | Player_name | Playing_team |
+ ----------- + ---------------- + -------------- +
| 1 | Вират Коли | RCB |
| 2 | Рохит Шарма | MI |
| 3 | Динеш Картик | KKR |
| 4 | Шреяш Айер | DC |
| 5 | Дэвид Уорнер | СРЗ |
| 6 | Стив Смит | RR |
| 7 | Андре Рассел | KKR |
| 8 | Джасприт Бумра | MI |
| 9 | Рисаб Пантх | DC |
+ ----------- + ---------------- + -------------- +

Теперь мы найдем фамилию каждого игрока, чтобы найти фамилию, мы должны применить следующий подход:

  • Во-первых, используя функцию INSTR (), чтобы найти расположение пробела () в имени.
  • Во-вторых, используя функцию LENGTH (), чтобы найти длину имени игрока. Здесь 'len' функции RIGHT будет длиной Player_name минус расположение символа '' (пробел).
  • В-третьих, использование функции RIGHT () для извлечения фамилии игрока.
ВЫБРАТЬ 
    Имя игрока,
    ВПРАВО (Player_name, LENGTH (Player_name) - INSTR (Player_name, '')) Фамилия,
    Playing_team
ИЗ
    Игрок;

Выход :

+ ---------------- + ---------- + -------------- +
| Player_name | Фамилия | play_team |
+ ---------------- + ---------- + -------------- +
| Вират Коли | Коли | RCB |
| Рохит Шарма | Шарма | MI |
| Динеш Картик | Картик | KKR |
| Шреяш Айер | Айер | DC |
| Дэвид Уорнер | Уорнер | СРЗ |
| Стив Смит | Смит | RR |
| Андре Рассел | Рассел | KKR |
| Джасприт Бумра | Бумра | MI |
| Рисаб Пантх | Panth | DC |
+ ---------------- + ---------- + -------------- +