Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Цитата Darkvar:
Номера сертификатов даже и не нужны, достаточно просто наименования этого сертификата. »
Как можно вывести наименование сертификата, которого НЕТ? А если этого сертификата нет ни у одного пользователя? Можно, конечно, создать небольшое соответствие номеров названиям, но, в случае отсутствия сертификата у всех, будет тупить...


Создаем запрос, в котором пишем вот такой хитрый запрос:


Код: Выделить весь код
SELECT Таблица1.ФИО, 
IIf(Таблица1.Сер1 is null,' Серт1  ','')  + 
IIf(Таблица1.Сер2 is null,' Серт2 ','')   + 
IIf(Таблица1.Сер3 is null,' Серт3 ','')   + 
IIf(Таблица1.Сер4 is null,' Серт4 ','')   +
IIf(Таблица1.Сер5 is null,' Серт5 ','')   + 
IIf(Таблица1.Сер6 is null,' Серт6 ','')   + 
IIf(Таблица1.Сер7 is null,' Серт7 ','') AS ["Сертификаты"]

FROM Таблица1
WHERE 
Таблица1.Сер1 is null OR 
Таблица1.Сер2 is null OR 
Таблица1.Сер3 is null OR 
Таблица1.Сер4 is null OR 
Таблица1.Сер5 is null OR 
Таблица1.Сер6 is null OR 
Таблица1.Сер7 is null

Данный пример имеет таблицу (Таблица1), в которой есть 7 Столбцов:

Код: Выделить весь код
Код	ФИО	  Сер1	Сер2	Сер3	Сер4	Сер5	Сер6	Сер7

На выходе получаем вот такой результат:


Код: Выделить весь код
ФИО	"Сертификаты"
Петров	 Серт1   Серт2  Серт3  Серт4  Серт5 
Сидоров	 Серт7
В исходной таблице у Иванова есть все 7 сертификатов, поэтому он не выводится в результат. У Сидорова нет только 7-го сертификата.

El Scorpio, согласен, структура базы ужаснейшая, но, зачастую, увы, приходится работать и с такими вот ляпусами, куда ж деваться

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:13, 19-07-2010 | #10