powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Один запрос внутри другого
12 сообщений из 12, страница 1 из 1
Один запрос внутри другого
    #34056473
OLEGus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создаю обычную
Код: plaintext
SqlCommand

Текст запроса такой:

Код: plaintext
1.
" SELECT * FROM (SELECT DISTINCT table_name_en FROM discription WHERE table_name_ru = 'имя') "

Внутрений запрос возвращает одно значение - имя таблицы,
которое должно использоватся во внешнем запросе.
Но почемуто не работает.
Приходится создавать два отдельных запроса.
Не подскажите в чем проблема?
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056496
Фотография Ramin Hashimzade
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какое отношение имеет вопрос к АДО . НЕТ???

и ешё ты понимаеш слово вложенные запросы?

----
www.hramin.jino-net.ru
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056513
Фотография Ramin Hashimzade
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почитай БОЛ!

----
www.hramin.jino-net.ru
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056549
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 OLEGus
Если возникает какая-то ошибка, то ее нужно здесь процитировать. Гадать на кофейной гуще желающих мало.
В данном случае, скорее всего, дело в том, что выражение в скобках надо дать алиас. Иначе получается выборка из набора данных без имени.
Т.е. например так: SELECT * FROM (SELECT ...) T

2 Ramin
Здесь вполне обычный вложенный запрос. Вы сами то как понимаете это понятие? :-)
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056709
OLEGus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ошибка как бы в том что неправильный текст запроса.
Но елси внутрений запрос запустить отдельно, методом
Код: plaintext
ExecuteScalar()
.
А внешний так как и было, но используя полученое значение с внутренего, а не сам внутрений запрос - то все работает.
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056726
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 OLEGus
Вы попробовали вариант, который я предложил? Судя по тексту ошибку, дело именно в алиасе подзапроса.
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056844
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Внутрений запрос возвращает одно значение - имя таблицы,
которое должно использоватся во внешнем запросе.
Но почемуто не работает.


Если здесь сформулировано правильно, то вы действительно НЕ понимаете суть подзапросов. Внутренний подзапрос должен возвращать не ИМЯ таблицы, а НАБОР ДАННЫХ, который используется вместо набора из таблицы.

Например, 2 запроса эквивалентны
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SELECT *
FROM tab1

SELECT *
FROM
(SELECT *
 FROM tab1
)

Если действительно нужно переменное имя таблицы, из которой делается SELECT, то это реализуется другими средствами, не подзапросами. Дальнейшее, полагаю, зависит от используемой базы данных, например, в Oracle для этого используется dynamic SQL
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056860
Фотография Ramin Hashimzade
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Bigheadman2 Ramin
Здесь вполне обычный вложенный запрос. Вы сами то как понимаете это понятие? :-)
тебя тоже надо читать БОЛ!

авторЗдесь вполне обычный вложенный запрос.



----
www.hramin.jino-net.ru
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056879
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ramin Bigheadman2 Ramin
Здесь вполне обычный вложенный запрос. Вы сами то как понимаете это понятие? :-)
тебя тоже надо читать БОЛ!

авторЗдесь вполне обычный вложенный запрос.


Может , если вы такой умный, подскажете какой раздел BOL читатать, раз уже это не вложенный запрос???
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056882
OLEGus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Bigheadman
спасибо, действительно в этом то и была ошибка,
вот рабочая строка:
Код: plaintext
" SELECT first.* FROM ( SELECT DISTINCT t_name_en FROM discription WHERE t_name_ua = 'имя') first";
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34056929
Фотография Ramin Hashimzade
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторМожет , если вы такой умный, подскажете какой раздел BOL читатать, раз уже это не вложенный запрос???
я кто сказал что это не вложенный запрос???!!!

я направлял тебя в бол именно в раздел который описывается вложенные запросы!

и до поста я у себя пробывал это.. вот:

Код: plaintext
1.
2.
3.
4.
5.
6.
create table #tt1 (name varchar( 50 ))
insert into #tt1 values('#tt2')

create table #tt2 (name1 varchar( 50 ))
insert into #tt2 values('hello')

select t.* from (select top  1  name from #tt1) as t


----
www.hramin.jino-net.ru
...
Рейтинг: 0 / 0
Один запрос внутри другого
    #34057053
ANTIVIR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ramin авторМожет , если вы такой умный, подскажете какой раздел BOL читатать, раз уже это не вложенный запрос???
я кто сказал что это не вложенный запрос???!!!

я направлял тебя в бол именно в раздел который описывается вложенные запросы!

Попробуйте при ответах в форуме хотябы пытаться смотреть кому и что вы отвечаете...
Дискуссию думаю смысла продолжать нет, т.к. вы, я вижу, слишком много знаете, боюсь мне будет сложно вас понять...
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Один запрос внутри другого
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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