powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / (SQL - Select) Выборка значений которые все есть в другой таблице
5 сообщений из 5, страница 1 из 1
(SQL - Select) Выборка значений которые все есть в другой таблице
    #35410796
Фотография Grumax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Table: Draw Таблица чертежей, уникальный ключ, имя разработчика, .T. - чертеж инструмента, .F. - приспособления
IdcNamelYesa001Max.T.a002Max.T.a003Max.F.a004Max.F.a005Alex.F.a006Alex.F.a007And.T.a008And.T.a009And.F.a010Mik.T.a011Mik.F.
Table: DrawNote Таблица пометок к чертежам
IdId_DrawcNote0001a010abc0002a011qwe0003a007wer0004a007wsx0005a008edc0006a011ert0007a002asde0008a010rfv0009a009yhn0010a003bgt0011a005okm
Необходимо выбрать имена тех конструкторов у которых все чертежи инструмента имеют пометки
cNameAndMik
у Мах только один четреж в пометках, типа не должен попадать
Код: plaintext
1.
2.
3.
4.
5.
select d.cName
  from Draw AS d
  inner join DrawNote AS dn
    on d.Id = dn.Id_Draw
  group by d.cName
  having d.lYes = .T.
а вот как сделать предикаты что у человека все чертежи есть в пометках не понимаю :( Желательно одним запросом...

------------------------------------------------------------------------------------
Код: plaintext
Я во все дела суюсь -> всесторонне разовьюсь                                                         Visual FoxPro 8.0
...
Рейтинг: 0 / 0
(SQL - Select) Выборка значений которые все есть в другой таблице
    #35410845
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так
Код: plaintext
1.
2.
3.
4.
5.
select distinct Draw.cName
   from Draw
   where Draw.cName not in 
      (select distinct Draw.cName
           from Draw left join DrawNote on Draw.Id = DrawNote.Id_Draw
           where DrawNote.Id_Draw is NULL)
...
Рейтинг: 0 / 0
(SQL - Select) Выборка значений которые все есть в другой таблице
    #35410857
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не заметил что только чертежи надо
Код: plaintext
1.
2.
3.
4.
5.
select distinct Draw.cName
   from Draw
   where Draw.lYes = .T. and Draw.cName not in 
      (select distinct Draw.cName
           from Draw left join DrawNote on Draw.Id = DrawNote.Id_Draw
           where Draw.lYes = .T. and DrawNote.Id_Draw is NULL)
...
Рейтинг: 0 / 0
(SQL - Select) Выборка значений которые все есть в другой таблице
    #35410871
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще немного поправлюсь. Так наверно не сработает:
Код: plaintext
where Draw.lYes = .T. and DrawNote.Id_Draw is NULL
надо заменить на
Код: plaintext
1.
where Draw.lYes = .T.
having DrawNote.Id_Draw is NULL
...
Рейтинг: 0 / 0
(SQL - Select) Выборка значений которые все есть в другой таблице
    #35411684
GoshaS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select cName
from Drow
inner join DrawNote
on drow.id=DrawNote.Id_Draw
where cNote in ('And','Mik') and lYes=.T.
group by cName
having count(*)> 1 
Только не понято, условие первой таблицы, поле cName - имя конструктора, затем
авторНеобходимо выбрать имена тех конструкторов у которых все чертежи инструмента имеют пометки And и Mik, при чем отображено как поле cName
Вроде как это не имя конструктора, а пометки инструмента в cNote, по этому и вписал его в условие cNote in ('And','Mik') а не cName in ('And','Mik') .
Если же cName, тогда можно обойтись и одной таблицей ;)
И как я понял, должно у конструктора быть как мин. 2-а чертежа инструмента.
Код: plaintext
1.
2.
3.
4.
5.
select cName
from Drow
where cName in ('And','Mik') and lYes=.T.
group by cName
having count(*)> 1 
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / (SQL - Select) Выборка значений которые все есть в другой таблице
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]