| 
| 
 | Вопрос # 3 560/ вопрос открыт / | 
 |  Здравствуйте, уважаемые эксперты!И ещё один маленький вопрос. Как можно из сформированного запроса, сформировать новый?
 
|  |   Вопрос задал: fff (статус: Посетитель)Вопрос отправлен: 22 декабря 2009, 16:23
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Вадим К Здравствуйте, fff!Если с помощью SQL, то можно так
 
 SELECT count(*) UniqueNamesCount FROM (SELECT DISTINCT FirstName FROM Employee)Но не все базы поддерживают такие "фокусы". В целом, обычно создают временную таблицу, и фильтруют через нее. Некоторые базы (MySQL к примеру) поддерживают временные таблицы в памяти.
 
|  | Ответ отправил: Вадим К (статус: Академик)Время отправки: 22 декабря 2009, 17:04
 Оценка за ответ: 5
 |  
 Мини-форум вопросаВсего сообщений: 2; последнее сообщение — 22 декабря 2009, 17:35; участников в обсуждении: 2. 
|   | fff (статус: Посетитель), 22 декабря 2009, 17:20 [#1]:SELECT count(*) UniqueNamesCount FROM (SELECT DISTINCT FirstName FROM Employee) 
 немного не понятно что означают UniqueNamesCount, FirstName Employee. Если не сложно можно привести на конкретном примере. Потому как я буду брать данные из таблицы базы данных и этого запроса. Одним запросом не уложится, в данной ситуации это не возможно.
 |  
|   | Вадим К (статус: Академик), 22 декабря 2009, 17:35 [#2]:В вопросе нет никакой базы. поэтому и пример надуманный. но понять суть полей просто
 Employee - таблица
 FirstName поле в ней.
 UniqueNamesCount - временное поле, которое будет хранить кол-во.
 То есть, результатом этого сложного запроса будет таблица с одной записью, которая содержит одно поле UniqueNamesCount.
 Вложенный запрос выбирает все уникальные имена в таблице, внешний запрос считает их.
 Галочка "подтверждения прочтения" - вселенское зло. |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |