У меня есть столбец, в котором отображаются названия проектов, через которые прошла наша компания, в другом столбце указаны часы, отработанные для каждого проекта.
Названия проектов содержат ключевые слова, ключевые слова определяются в формате «ключевое слово:».например, 'ETL:'
В некоторых проектах есть несколько ключевых слов, например, 'Клиент: ETL: ASCX:'
Так, например, заголовок проекта может быть "Клиент: ETL: ASCX: обновить импорт".process '
Я не знаю ключевых слов заранее.
Мне нужно общее количество часов и проектов для данного ключевого слова. Итак, давайте использовать следующие два заголовка проекта в качествепример:
- Клиент: ETL: ASCX: на него было потрачено 20 часов работы.
- Клиент: ETL: Bridge: в него вложено 10 часов работы.
В отчете должно быть указано:
Keyword - Total Projects - Total Hours
Client: - 2 -30
ETL: - 2 - 30
ASCX: - 1 - 20
Bridge: - 1 - 10
Получение первого экземпляраключевое слово просто - просто подстрока;но поиск вложенного ключевого слова оказывается трудным.
Можно ли выполнять вложенные поиски в SQL?
любых получателей?
ОБНОВЛЕНИЕ (первоначально опубликовано как"answer"):
Дополнительные примеры:
Допустим, у меня есть две записи со следующими названиями проектов:
Record 1: Interface: ETL:
Record 2: ETL:
Запись 1 имеет 10 часов, а запись 2 имеет30 часов.
Прямо сейчас мой код захватывает первый экземпляр ключевого слова, поэтому мой вывод прямо сейчас (ключевое слово: часы)
ETL: 30
Interface: 10
Однако требуется показать, что ETL имеетВыделено 40 часов, так как два проекта имели ETL в качестве ключевого слова:
ETL: 40
Interface: 10
Так что я могу использовать LIKE, чтобы найти все экземпляры ETL или Interface, но мне нужно разбить выбор в каждом из них.ключевое слово.Например, в приведенном выше примере, если бы я использовал «% ETL:%», я получил бы обе записи, но я хочу видеть все часы для всех ключевых слов с разбивкой по ключевым словам.
Может быть, лучший вопросбыть:
Как я могу получить запись, которая выглядит следующим образом:
Interface: ETL:
В вывод, который выглядит так:
Interface:
ETL:
в sql?