Выбрать поля, название которых совпадает с шаблоном - MySQL

Узнай цену своей работы

Формулировка задачи:

Здравствуйте. Есть запрос в базу данных на выборку из нескольких таблиц.
SELECT * FROM `ybwuz_jshopping_products_to_categories` cats 
                LEFT JOIN `ybwuz_jshopping_products` prods ON prods.`product_id`=cats.`product_id`
                LEFT JOIN `ybwuz_jshopping_currencies` currencies ON prods.`currency_id`=currencies.`id`
                WHERE cats.`category_id` IN (".$categorys.")  AND prods.`product_publish`='1' ".$addsql." AND prods.`product_id` IN (".$pidsstr.")
                GROUP BY prods.`product_id`";
Вопрос такой: как переписать данный запрос, чтобы вместо всех полей он выбирал только нужные? Дело в том, что мне нужны все поля из таблицы `ybwuz_jshopping_products`, название которых начинается с "extra_field_". Названия полей в этой таблицы такие: "extra_field_3", "extra_field_5", "extra_field_54". При этом структура таблицы и названия полей могут меняться, поэтому заранее узнать какие именно поля выбирать не получится. В общем запрос должен получиться примерно следующим:
SELECT prods.`product_id`, cats.`category_id`, prods.`extra_field_%` AS fieldName FROM `ybwuz_jshopping_products_to_categories` cats .........

Решение задачи: «Выбрать поля, название которых совпадает с шаблоном»

textual
Листинг программы
PREPARE stmt FROM @myQuery;  EXECUTE stmt;

Объяснение кода листинга программы

В представленном коде происходит подготовка и выполнение SQL-запроса. Вот список действий, которые происходят в коде:

  1. PREPARE stmt FROM @myQuery; - Эта строка кода подготавливает SQL-запрос, который хранится в переменной @myQuery. Подготовка запроса включает в себя определение структуры запроса и его параметров.
  2. EXECUTE stmt; - Эта строка кода выполняет подготовленный SQL-запрос. Выполнение запроса включает в себя замену параметров на их значения и выполнение запроса на сервере базы данных. Вот так выглядит оформление списка с номерами до 20:
  3. Название переменной: Значение переменной
  4. Название переменной: Значение переменной
  5. Название переменной: Значение переменной
  6. Название переменной: Значение переменной
  7. Название переменной: Значение переменной
  8. Название переменной: Значение переменной
  9. Название переменной: Значение переменной
  10. Название переменной: Значение переменной
  11. Название переменной: Значение переменной
  12. Название переменной: Значение переменной
  13. Название переменной: Значение переменной
  14. Название переменной: Значение переменной
  15. Название переменной: Значение переменной
  16. Название переменной: Значение переменной
  17. Название переменной: Значение переменной
  18. Название переменной: Значение переменной
  19. Название переменной: Значение переменной
  20. Название переменной: Значение переменной
  21. Название переменной: Значение переменной
  22. Название переменной: Значение переменной

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.286 из 5
Похожие ответы