powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вернуть записи по которым нет данных
9 сообщений из 9, страница 1 из 1
Вернуть записи по которым нет данных
    #39762526
palladin600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

Подскажите пожалуйста как запросить id учеников, у которых отсутствуют параметрические данные.
Таблицы приблизительно такие:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
--список всех учеников
declare @Pupils table(id int, [Name] varchar(10))
insert into @Pupils(id,name)
select 1, 'Ваня' union all
select 2, 'Петя' union all
select 3, 'Жора' union all
select 4, 'Даша' union all
select 5, 'Таня'  

--таблица биометрических данных
declare @PupilMetrics table(id int, Height int, [Weight] int)
insert into @PupilMetrics(id, Height, [Weight])
select 1, 166, 40 union all
select 2, 168, 50 union all
select 4, 138, 34

select [name], Height, [Weight] from @Pupils p inner join @PupilMetrics pm on p.id = pm.id


возвращает троих учеников. А нужны, наоборот, те, у которых не проставлены значения. Т.е. Жора и Таня
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762527
londinium
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
palladin600,
Код: sql
1.
2.
3.
4.
5.
6.
select [name], Height, [Weight] from @Pupils p
where not exists
(
  select 1 from @PupilMetrics pm
   where p.id=pm.id
)
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762540
palladin600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
londinium,

спасибо, но можно ли более детальный синтаксис? А то, подсвечивает с ошибкой поля Height, [Weight] , мол, нет таких в таблице @Pupils.
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762541
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
palladin600londinium,

спасибо, но можно ли более детальный синтаксис? А то, подсвечивает с ошибкой поля Height, [Weight] , мол, нет таких в таблице @Pupils.А что вы в этих полях хотите увидеть?
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762542
palladin600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич, здраствуйте,
планирую увидеть:
Код: plaintext
1.
3, Жора
5, Таня
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762544
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так и напишите те поля, которые хотите увидеть.
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762548
palladin600
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гавриленко Сергей Алексеевич,
резонно, благодарю.

Код: plaintext
1.
2.
id	name
3	????
5	????

а, не скажете, а почему в окне запросов MSQLSMS выкидываются вопросы вместо русских букв? Уже и nvarchar поставил в name, и всё равно '????'
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762554
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
declare @Pupils table(id int, [Name] nvarchar(10))
insert into @Pupils(id,name)
select 1, N'Ваня' union all
select 2, N'Петя' union all
select 3, N'Жора' union all
select 4, N'Даша' union all
select 5, N'Таня'  
...
Рейтинг: 0 / 0
Вернуть записи по которым нет данных
    #39762607
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
select [name], Height, [Weight] from @Pupils p left join @PupilMetrics pm on p.id = pm.id Where Height is null or [Weight] is null
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Вернуть записи по которым нет данных
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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