Я хочу написать команду SQL для извлечения имен столбцов из таблицы inf2, где имя столбца должно иметь определенный год или месяц

У меня есть таблица с именем столбца 2/may/2018, 2/june/2018 и т. д. Теперь я хочу получить данные из столбцов, имя которых может быть указано.

Это похоже на очень плохой дизайн таблицы

Tangentially Perpendicular 05.05.2022 07:14

Это. Но это данные с веб-сайта, который не был создан самостоятельно.

Shalini Sharma 05.05.2022 07:54

О, мальчик, это грязно. Вы можете выяснить, существует ли определенный столбец в таблице, запросив INFORMATION_SCHEMA, но вы не сможете получить его значение таким образом. Я бы предложил использовать что-то вроде PowerQuery для преобразования данных в более удобный формат.

Shahid Syed 05.05.2022 16:36
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
Освоение PHP и управление базами данных: Создание собственной СУБД - часть II
В предыдущем посте мы создали функциональность вставки и чтения для нашей динамической СУБД. В этом посте мы собираемся реализовать функции обновления...
Документирование API с помощью Swagger на Springboot
Документирование API с помощью Swagger на Springboot
В предыдущей статье мы уже узнали, как создать Rest API с помощью Springboot и MySql .
Роли и разрешения пользователей без пакета Laravel 9
Роли и разрешения пользователей без пакета Laravel 9
Этот пост изначально был опубликован на techsolutionstuff.com .
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
Как установить LAMP Stack - Security 5/5 на виртуальную машину Azure Linux VM
В предыдущей статье мы завершили установку базы данных, для тех, кто не знает.
0
3
34
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий
 SELECT `COLUMN_NAME` FROM `INFORMATION_SCHEMA`.`COLUMNS`
 WHERE `TABLE_SCHEMA`='[database name]' and `TABLE_NAME`='[table name]'
 AND `COLUMN_NAME` LIKE '%may%'

Это должно работать. Вы также можете обратиться к этому ответу, который предназначен для аналогичного запроса. - MySQL: выберите имена столбцов, содержащие строку

Также на случай, если мне это понадобится в каком-то диапазоне, например, с 2018 по 2019 год?

Shalini Sharma 05.05.2022 07:53

В предложении WHERE вы можете добавить это: AND (COLUMN_NAME LIKE '%2018' OR COLUMN_NAME LIKE '%2019')

karthik_ghorpade 05.05.2022 07:55

@karthik_ghorpade для поиска между датами.. используйте предложение BETWEEN , SELECT * FROM Orders WHERE OrderDate МЕЖДУ '1996-07-01' И '1996-07-31'; ИсточникW3Schools

Demeteor 05.05.2022 11:01

@Demeteor Я думаю, что OP хотел понять, как найти данные из таблиц со столбцами, содержащими 2018 или 2019 годы в их именах, а не все записи между заданным диапазоном дат. Пожалуйста, перечитайте исходный вопрос.

karthik_ghorpade 05.05.2022 12:17

@ShaliniSharma, дайте мне знать, если это решение сработало для вас

karthik_ghorpade 05.05.2022 12:19

@karthik_ghorpade, вы правы, он хочет записи с Мэй в названии. мои плохие ура за указание на это

Demeteor 05.05.2022 12:54

@karthik_ghorpade, Деметеор, большое спасибо за наши ответы. Это сработало для меня.

Shalini Sharma 06.05.2022 08:16

Другие вопросы по теме