Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.05.2017, 09:23   #1
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию IBExpert - связь между таблицами

Здравствуйте! Только приступила к работе по изучению SQL.
Нужно создать такой запрос -
--- Если в таблице ReasonSuspensionOfProceedings в столбце Name поле заполнено как "С розыском", то значит столбец Мера из другой таблицы CoerciveMeasureKind и столбец Мера из таблицы PreventivePunishmentKind не должны быть пустыми. Т.е. на экран нужно вывести цельную таблицу, в которой будет указано, где именно содержатся пустые значения.
Я пока что написала как могла, на начальном уровне. Подскажите пожалуйста в каком направлении двигаться.

select *
from "ReasonSuspensionOfProceedings"
where "Name" ='В связи с розыском"

select *
from "CoerciveMeasureKind"
where "Name" = NULL

select *
from "PreventivePunishmentKind"
where "Name" = NULL

РАБОТАЮ на IBExpert
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 11.05.2017, 09:35   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

А как таблицы связаны между собой?
И не надо кросспостить, создавая одну и ту же тему в разных разделах
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 11.05.2017, 10:08   #3
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

1 рисунок - таку выглядит программа, которую заполняют пользователи
2 рисунок - в этой программе я нахожу названия нужных мне таблиц, чтобы указать их в sql - запросах.
3 рисунок- это всевозможные связи в программе..
Изображения
Тип файла: jpg Безымянный1.JPG (63.9 Кб, 138 просмотров)
Тип файла: jpg Безымянный12.JPG (96.9 Кб, 164 просмотров)
Тип файла: jpg 4.jpg (118.6 Кб, 161 просмотров)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 11.05.2017, 10:33   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Красиво. И нуль информации ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 11.05.2017, 12:40   #5
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

Пример такой -
Если присутствует вкладка «Движение дела» и там есть =Результат 1 инстанции, то в экранной форме «Квалификация/результат рассмотрения должно стоять значений либо осужден, либо оправдан»
Это все находится в программе, где заполняются данные пользователями.
Изображения
Тип файла: jpg 1.JPG (109.9 Кб, 128 просмотров)
Тип файла: jpg 2.JPG (108.9 Кб, 129 просмотров)

Последний раз редактировалось ya_yanchik-2909; 11.05.2017 в 12:43.
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 11.05.2017, 12:46   #6
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

Это уже таблички из IBExpert. Я нахожу такие же данные в таблице,как в программе записаны и пишу sql запрос. Верно же?
Изображения
Тип файла: jpg 4.JPG (25.6 Кб, 124 просмотров)
Тип файла: jpg 5.JPG (50.3 Кб, 122 просмотров)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 11.05.2017, 13:03   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Опять не то. Есть таблицы ReasonSuspensionOfProceedings и CoerciveMeasureKind. Как найти запись/записи из таблицы CoerciveMeasureKind, соответствующие выбранной записи из таблицы ReasonSuspensionOfProceedings? Аналогично для ReasonSuspensionOfProceedings и PreventivePunishmentKind.
Для этого нужно знать структуру этих таблиц и связи между ними. Возможно все сложней и потребуются информация об устройстве других таблиц
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.05.2017, 09:38   #8
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

Можете тогда пожалуйста на вот этом простом примере объяснить?
Имеется такая таблица(как впринципе и у меня)

Непонятно:
1. Можно ли дорисовать (как это я сделала) табличку "ТОВАР", чтобы по этому атрибуту соединялись 2 таблички? Или в каком случае так делается?
2. Я так понимаю, значения всех атрибутов заполняются отдельно? Где это происходит? Уже в БД же.
3. Как к этой таблице прописать запрос примерно такой же, как в изначальном вопросе. Наример - Если в таблице "Склад" атрибут "Город" будет заполнен, как Москва, то в таблице "Изготовитель" должно быть отмечено - Россия? Или эта строка не должна быть пустой.

По-моему я совсем заблудилась..
Изображения
Тип файла: jpg 105.JPG (60.8 Кб, 133 просмотров)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 12.05.2017, 09:47   #9
ya_yanchik-2909
Пользователь
 
Регистрация: 15.11.2016
Сообщений: 62
По умолчанию

Вот это я имела ввиду, что таблицы связаны по атрибуту.
И по какой таблице тогда писать sql - запросы?!
В которой уже отдельная табличка или которая с атрибутом?!
Изображения
Тип файла: jpg 106.JPG (39.5 Кб, 132 просмотров)
ya_yanchik-2909 вне форума Ответить с цитированием
Старый 12.05.2017, 10:05   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Примерно в таком духе можно
Код:
SELECT Склад.*
  FROM Склад
    LEFT JOIN Товар ON Товар.Идентификатор=Склад.Товар
  WHERE Склад.Город='Москва' AND (ISNULL(Товар.Изготовитель) OR Товар.Изготовитель<>'Россия')
PS в огнептице нет ISNULL, заменить можно так:

Код:
  WHERE Склад.Город='Москва' AND (Товар.Изготовитель IS NULL OR Товар.Изготовитель<>'Россия')
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 12.05.2017 в 10:46.
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
связь между таблицами nefa Microsoft Office Access 0 21.03.2016 18:36
связь между таблицами arhitector C/C++ Базы данных 2 22.01.2012 16:47
Связь между таблицами byte916 Microsoft Office Access 3 03.08.2011 11:05
Связь между таблицами Hottabych БД в Delphi 2 15.11.2009 22:09
Связь между таблицами Катрина БД в Delphi 3 17.05.2008 18:24