Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать запрос / 3 сообщений из 3, страница 1 из 1
11.12.2003, 16:08
    #32350930
Как сделать запрос
Возможно-ли сделать такой запрос:

есть 2 таблицы:

Код: plaintext
1.
2.
3.
  users (id int primary key, name char ( 50 )) 
  
  subscribed_users (firm_id int primary key)


т.е. subscribed_users содержит в себе некоторые id из таблицы users
можно ли сделать запрос по users такой что он в одной строке будет выдавать и name юзера и то что он содержится в subscribed_users

сейчас приходится делать так


Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
with currentDb.openRecordset( "select * from users" )
  while not .eof do
    user_id = ![id]
    user_name = ![name]

    if( currentDb.openRecordset ( "select * from subscribed_users where id="  + user_id +  ";" ).RecordCount >  0 ) 
      user_subscribed =  1  else user_subscribed= 0 
    end if
  loop
end with

' Может быть неверный синтаксис, но это неважно - сейчас работаю не в Access, волнует только сам запрос


можно ли все это сделать одним запросом ?


С уважением, Каримбаев Тимур
...
Рейтинг: 0 / 0
11.12.2003, 16:28
    #32350955
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать запрос
Никаких проблем. Один селект с джойном - и все.
...
Рейтинг: 0 / 0
11.12.2003, 16:28
    #32350958
IgorM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как сделать запрос
select u.id, u.name, sgn(nz(su.id)) as subscribed
from users as u
left join subscribed_users as su
on u.id = su.id
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как сделать запрос / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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