powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выбор вывода в зависимости от условия
4 сообщений из 4, страница 1 из 1
Выбор вывода в зависимости от условия
    #39853157
hysgvarna
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CREATE DEFINER=`xxx`@`xxx` PROCEDURE `MUL`(lang varchar(2))
BEGIN

SELECT COALESCE(JSON_EXTRACT(GroupName, CONCAT("$.", COALESCE(lang, 'ru'))),
JSON_EXTRACT(GroupName, "$.ru"), (SELECT name1 FROM MUL_LANG)) text
FROM PriceGroup;

END


Нужно реализовать вывод информации в зависимости от содержимого. если json строка то выводить по существующему алгоритму, а если обычная текстовая строка, то выводить без обертывания.
...
Рейтинг: 0 / 0
Выбор вывода в зависимости от условия
    #39853203
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Выбор вывода в зависимости от условия
    #39853246
hysgvarna
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

Решил вопрос немого проще


CREATE DEFINER=`xxx`@`xxx` PROCEDURE `MUL`(lang varchar(2))
BEGIN

SET @column_name = 'GroupName';
SET @table_name = 'PriceGroup';

SET @tupe = (SELECT DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = @table_name AND
COLUMN_NAME = @column_name);

CASE

WHEN @tupe = 'json'
THEN
SELECT COALESCE
(JSON_EXTRACT(@column_name, CONCAT("$.", COALESCE(lang, 'ru'))),
JSON_EXTRACT(@column_name, "$.ru"), (SELECT name1 FROM MUL_LANG)) text
FROM @table_name;

WHEN @tupe = 'varchar'
THEN

SELECT @column_name FROM @table_name;

END CASE;

END

Данная программа в любом случае выведет значения столбца, а если это json, то еще и с выборкой языка
...
Рейтинг: 0 / 0
Выбор вывода в зависимости от условия
    #39853266
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЭТО - проще? ну тебе виднее... тогда на всякий случай проверяй ещё и SCHEMA_NAME...
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выбор вывода в зависимости от условия
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]