powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / запрос
13 сообщений из 13, страница 1 из 1
запрос
    #38392238
Vova_1805
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеем 2 запроса:
Код: vbnet
1.
"SELECT COUNT(*) FROM [Pensioner]"


И
Код: vbnet
1.
"SELECT * FROM [Pensioner] WHERE IsNull(Address)"


Как их объединить, чтобы за одно выполнение
Были выбраны записи и помещены, допустим, в DataGridView
А их число помещено в переменную
Код: vbnet
1.
Dim returnValue As intege

r

Мой вариант неправильный:
Код: vbnet
1.
"SELECT COUNT(*) FROM [Pensioner] WHERE IsNull([Address])"


СПАСИБО!
...
Рейтинг: 0 / 0
запрос
    #38392246
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vova_1805,

select * -- за такое надо убивать
from [Pensioner]
where IsNull(Address) -- ??? Может, Address is null?


return @@ROWCOUNT -- если не ms sql, 100% есть аналог
...
Рейтинг: 0 / 0
запрос
    #38392278
Syrex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Делай два запроса. Они у тебя разные.
Один вернет общее количество строк. Другой - количество с непустым адресом.
...
Рейтинг: 0 / 0
запрос
    #38392383
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SyrexДелай два запроса. Они у тебя разные.
Запросы то разные, но
Vova_1805Как их объединить, чтобы за одно выполнение
Были выбраны записи и помещены, допустим, в DataGridView
А их число помещено в переменную
...
Рейтинг: 0 / 0
запрос
    #38392419
Andrew1411
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arm79,
варианты:
1. читать про output параметры, но помнить, что они приходят только при получении клиентом всех рекордсетов полностью.
2. вернуть два рекордсета, первый, к каунтом воспринимать как скалярный запрос, а второй рекордсет кдать в грид.
0. заняться теорией
...
Рейтинг: 0 / 0
запрос
    #38392446
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vova_1805Как их объединить, чтобы за одно выполнение


В хранимку запихни.
...
Рейтинг: 0 / 0
запрос
    #38392457
Andrew1411
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
варианты:
1. StoredProcedure
2. "SELECT COUNT(*) FROM [Pensioner]; SELECT * FROM [Pensioner] WHERE IsNull(Address)"
3. SP_ExecuteSql
0. заняться теорией
...
Рейтинг: 0 / 0
запрос
    #38392472
Syrex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поддержу пункт 0 от Andrew1411
...
Рейтинг: 0 / 0
запрос
    #38392476
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrew1411,

4. Select count(*), null,null,null... null from [Pensioner] union select name, age,...., address from [pensioner] where address is null
...
Рейтинг: 0 / 0
запрос
    #38392485
Andrew1411
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pallaris,

нет, это объединение в один рекордсет.
вам же нужно просто дернуть NextRecordset
...
Рейтинг: 0 / 0
запрос
    #38392515
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrew1411,

Вы сами то не считаете, что идиотизм дергать два запроса?

Человек ясно же написал, что ему нужно.
И, учитывая "Dim returnValue As intege", естественно предположить, что анализируется именно RETURN_VALUE

Чтобы не плодить сущностей, достаточно сделать хранимку, в которой селект и в через RETURN возвращать SCOPE_IDENTITY()

А то началось, два запроса + два рекордсета + выходные параметры. Зачем усложнять?
...
Рейтинг: 0 / 0
запрос
    #38392530
Syrex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Автор. Запихните ваши данные в DGV и посчитайте количество строк DGV

Просто у вас запрос на получение всех записей из таблицы, а в тексте вы хотите получить количество записей, которые вернул второй запрос.

Определитесь уже
...
Рейтинг: 0 / 0
запрос
    #38392754
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vova_1805,

SELECT (SELECT COUNT(*) FROM [Pensioner]) as Cnt, другие поля from [Pensioner] WHERE IsNull(Address)
order by подставить колонку для групировки

ну и с помощью sqlreader читать данные
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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