Построение запросов в STATISTICA
Введение
Запрос STATISTICA используется для легкого доступа к данным целого ряда баз данных (включая очень большие СУБД, такие как Oracle, MS SQL Server, Sybase, и т.д.) с помощью технологий Microsoft OLE DB (Object Linking and Embedding Database).
OLE DB - это мощная технология баз данных, которая обеспечивает универсальную интеграцию через локальную сеть предприятия, от сервера к рабочим станциям независимо от типов данных.
OLE DB предоставляет более общую и более эффективную стратегию для доступа к данным, чем более старая технология ODBC, потому что она предоставляет доступ к большим типам данных и базируется на модели компонентных объектов (COM).
Запрос STATISTICA поддерживает составные таблицы БД; определенные записи (строки таблиц) выбираются путем ввода SQL выражений, которые Запрос STATISTICA автоматически создает, как только вы выбрали компоненты запроса с помощью графического интерфейса и/или опций меню и диалогов.
Язык SQL (Structured Query Language - язык структурированных запросов) позволяет сформулировать запрос удаленному источнику о содержащихся в нем данных. Язык SQL используется для того, чтобы указать набор строк, которые должны быть импортированы
Пример - Построение запросов к БД с помощью OLE DB
В STATISTICA выберите Создать Запрос в меню Данные - Внешние данные (или в меню Файл - Внешние данные) и нажмите кнопку Создать в окне Соединение с базой данных. Тогда появится диалог Свойства связи с данными, который нужен для создания соединения с базой данных.
![]()
Рис.1 Окно Свойства связи с данными, вкладка Поставщик данных
Во вкладке Поставщик данных выберите драйвер для OLE DB соединения. Чтобы создать соединение OLE DB, выберите соответствующий Microsoft Jet OLE DB Поставщик данных для вашей базы данных. Затем нажмите кнопку Далее, чтобы попасть на вкладку Подключение, или просто сами щелкните по вкладке Подключение.
Вкладка Подключение. Используется для настройки параметров подключения к данным ODBC.
![]()
Рис.2 Вкладка Подключение
Вкладка Подключение для каждого поставщика своя. На нее выносятся только те свойства соединения, которые необходимы для поставщика OLE DB для ODBC.
Использовать имя источника данных. Выберите из списка или введите имя источника данных ODBC (DSN), к которому необходимо получить доступ. Имеется возможность добавить другие источники с помощью администратора источников данных ODBC. Обновите список с помощью кнопки Обновить.
Использовать строку подключения. Ввод или создание строки подключения ODBC вместо использования существующего источника данных DSN.
Пользователь. Введите имя пользователя, необходимое для подключения к источнику данных.
Пароль. Введите пароль, который будет использоваться при подключении к источнику данных.
Введите начальный каталог. Введите имя каталога (или базы данных) или выберите его из раскрывающегося списка.
Проверить подключение. Проверка соединения с указанным источником данных. Если соединение установить не удалось, убедитесь в правильности заданных настроек. Возможно, отсутствие соединения вызвано неточным соблюдением регистра символов или ошибками синтаксиса.
После успешной установки соединения нажмите OK в окне Свойства связи с данными, тогда появится диалог Добавить соединение с базой данных.
![]()
Рис.3 Диалог Добавить соединение с базой данных
В окне Добавить соединение с базой данных введите имя соединения OLE DB в поле Имя. Нажмите ОК.
Теперь с помощью окна Запрос STATISTICA можно создать запрос. В левой части окна Запрос STATISTICA можно открывать таблицы и просматривать поля.
Запрос STATISTICA предлагает два режима работы: Графический и Текстовый. Обычным режимом работы с запросами является Графический режим, и для большинства пользователей это самый простой и удобный режим в STATISTICA.
Графический режим
![]()
Рис.4 Запрос STATISTICA, Графический режим
В этом режиме окно Запрос STATISTICA делится на три части:
1) в левой части - Дерево списка объектов.
Дерево - это визуальное представление таблиц и полей, системных таблиц/обозрений базы данных. Внутри этой части окна имеются различные типы пиктограмм, чтобы облегчить идентификацию объектов списка при Подключении к БД.
2) в верхнем правом углу - Графическая часть окна.
Здесь появляются выбранные таблицы, когда вы выделяете их названия на Дереве и перетаскиваете мышью в Графическую часть окна. Во вкладках автоматически появится последовательность полей, критерий, и SQL Запрос, которую вы выбрали на Дереве, в Графической части окна и/или с помощью опций меню.
3) внизу слева находятся Вкладки:
Последовательность полей. Отображает список таблиц и полей, которые включены в запрос в формате Таблица.Поле
Критерии. Предоставляется список критериев, которые вы хотите включить в запрос.
SQL Запрос. Здесь находится исходный текст SQL запроса, который вы создали в Запросе STATISTICA.
Текстовый режим
![]()
Рис.5 Запрос STATISTICA, Текстовый режим
В Текстовом режиме построения запросов в STATISTICA окно делится на две части: Дерево объектов на левой стороне и Текст на правой стороне.
На Дереве находятся таблицы, поля, системные таблицы/обозрения баз данных. В Текстовой части окна находится SQL запрос, который можно редактировать. Можно вводить текст прямо в Текстовой части окна, можно также перетаскивать имена таблиц и полей с Дерева в Текстовую часть окна.
Дополнительные функции текстового режима
Приведем некоторые дополнительные функции SQL, которые недоступны в Графическом режиме, но их можно добавить в запрос редактированием SQL выражения в Текстовом режиме.
Используйте математические операторы для проведения вычислений внутри критериев (например +, -, *, /, MEAN, AVG, SUM, COUNT, MIN, MAX, etc.). Например, можно сложить определенные поля вместе чтобы вычислить итоговую стоимость (т.е. SELECT (SubTotal + ShippingPrice + Tax) TotalPrice FROM Orders).
Задание внешних связей позволит выбрать записи, которые не эквивалентны. Это пригодиться в случае, когда у вас данные из двух таблиц схожей структуры, но их данные не идентичны. При этом будут выбраны все записи одной таблицы независимо от того, соответствуют ли записи двух таблиц друг другу. Если две записи соответствуют друг другу, то они будут выведены как одно наблюдение. Если же они не соответствуют друг другу, то запись будет все равно присутствовать как наблюдение STATISTICA, хотя оно будет представлено пустой ячейкой (пропущенные данные).
Задание извлекающей связи выделит записи, которые различаются в таблицах. Это может пригодиться, если у вас есть данные в двух таблицах схожих по структуре, но не являющиеся одинаковыми по содержанию. Все записи из первой таблицы, которые не равны записям из второй таблицы, будут выведены в STATISTICA как наблюдения.
Сортировка строк по одному или нескольким столбцам. Порядок сортировки может быть возрастающим или убывающим. Например, можно произвести сортировку по одному полю или по нескольким полям.
Связь
Если запрос содержит больше одной таблицы, Запрос STATISTICA автоматически создает связь между двумя таблицами при обнаружении связи в базе данных между двумя полями различных таблиц. Связь показывает, как связаны две таблицы, и определяет, какие записи будут возвращены как результаты Запроса STATISTICA.
Например, предположим, что первая таблица содержит вес объектов с их номером, а вторая таблица содержит номер объекта и название продукта. Связь задается так, что поля с номера объектов должны быть равны.
Когда вы находитесь в Графическом режиме, все созданные связи это внутренние связи. внутренние связи выбирают только те записи, которые имеют то же самое значения в объединяемых полях выбранных таблиц. Запрос STATISTICA затем объединяет согласующиеся записи из каждой таблицы и выводит их в Таблице STATISTICA как одно наблюдение. Если запись не содержит соответствующего значения в таблице, которой она присоединяется, то эта запись будет удалена из результата запроса.
Обзор критериев
Критерии задают условия, по которым выбираются записи из внешнего источника данных, эти записи возвращаются в наблюдениях как результаты запроса. Следовательно, критерий - это часть SQL выражения, которая используется для ограничения числа записей, возвращаемых в STATISTICA Таблицу.
Чтобы добавить критерий, воспользуйтесь опциями диалога Добавить критерий, который можно вызвать, если выбрать Добавить в меню Критерии, или можно выбрать поле указателем мыши в Графической панели и перетащить его во вкладку Критерии.
![]()
Рис. 6 Окно Добавить критерий
Если вы выбираете поле критериев, то нужно быть уверенным в корректности таблицы, для которой эти критерии задаются. Следующие примеры сделаны с фиктивной базой данных для иллюстрации различных способов задания критериев для записей.
Можно получить все записи, которые содержат (или не содержат) заданные значения. Например, если вы хотите получить только заказчиков из Louisville, тогда задайте, что поле "Город заказчика" таблицы equals Louisville.
Можно также возвратить диапазон записей. Например, если нужны все заказы между $500 и $700, то задайте для поля ОбъемЗаказа в таблице Заказы is greater than or equal to $500 AND поле ОбъемЗаказа is less than or equal to $700.
Можно получить все записи, которые принадлежат одной из (или не принадлежат) заданных групп. Например, если вы хотите получить отчеты по продажам, которые были сделаны не в США, Швейцарии или Германии, то задайте для поля Страна в таблице Заказы is not one of значения США, Швейцария или Германия.
Можно получить записи, которые находится между (или наоборот, вне) заданных значений. Например, если необходимо получить заказы, которые были оплачены между 5-ым и 10-ым декабря, тогда задайте для поля Дата в таблице Заказ between 12-5 AND 12-10. Учтите, что STATISTICA Query автоматически включит AND в критерий, если задается оператор between. В качестве аргументов можно задать только два значения.
Можно также получить записи, которые начинаются, оканчиваются или состоят (или наоборот) из определенных символов. Например, если необходимо получить всех заказчиков с телефонным кодом 330, тогда задайте для поля НомерТелефона таблицы Заказчик begins with 330. Заметьте, что можно вводить 330 с или без кавычек.
Можно получить записи, которые схожи (или, наоборот, несхожи) с заданным критерием. Например, если нужно получить информацию о сотруднике по имени Касмирский, но вы не помните при этом его имени, тогда задайте для поля ИмяСотрудника в таблице Сотрудники is like Ка%.
и др.
После того, как Запрос построен, выберите команду Вернуть данные в STATISTICA в меню Файл или нажмите кнопку
в панели инструментов, тогда появится диалог Экспорт внешних данных в Таблицу.
![]()
Рис. 7 Окно Экспорт внешних данных в таблицу
В окне Экспорт внешних данных в Таблицу можно дать имя запросу. Можно также адресовать результаты запроса новой или текущей Таблице. После нажатия кнопки OK , результаты запроса будут переданы указанной Таблице.
Авторские права на дизайн и материалы сайта принадлежат компании StatSoft Russia.
|
© StatSoft Russia |
StatSoft Russia – компания, зарегистрированная и действующая в соответствии с законами России, которые могут отличаться от законов других стран, имеющих офисы StatSoft. Каждый офис StatSoft является самостоятельным юридическим лицом, имеет право предлагать услуги и разрабатывать приложения, которые могут быть, а могут и не быть представлены в офисах StatSoft других стран. |