Здравствуйте! Сегодня: Чт, 22 Окт 2020, Ваш IP: 3.210.201.170 Войти через loginza
 
Вход | Регистрация | Забыли пароль?
Мой Kbyte.Ru
> Список форумов Kbyte.Ru - - Базы данных
+ Создать новую тему Страница: 1
Тема: Подзапросы · +  +  дата добавления: 30.07.2014 / 19:53
Автор темы:
rusiko
rusiko
тем: 104 / ответов: 25 / благодарностей: 0 / репутация: 3
ответов: 25
создал(а) тем: 104


Привет всем. У меня есть вопрос по SQL Server. Помогите пожайлуста. Как можно определить использование подзапросов после select, from и where? То есть, допустим нужно что-то найти в БД. Пишу запрос и в каком-то месте нужно написать подзапрос. Пишу подзапрос после from, компилятор не выдает ошибки, пишу после
where опять все нормально (без ошибок), но результаты разные. Не могу определить где правильно будеть написать подзапрос после where или from. Спасибо заранее.
Технологии: Microsoft SQL Server
 
Ответ # 1 # · +  +  дата добавления: 31.07.2014 / 13:28
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Запрос вида:
SELECT * FROM users WHERE id_users IN (SELECT id_users FROM forum_messages WHERE main_text LIKE '%Подзапросы%')
вернет всех пользователей из таблицы users, которые оставили на форуме сообщения, текст которых содержит строку "подзапросы".

Запрос вида:
SELECT forum_messages.*,
(SELECT TOP 1 nickname FROM users WHERE id_users = forum_messages.id_users) AS author_name
FROM forum_messages WHERE main_text LIKE '%Подзапросы%'
вернет все сообщения форума, которые содержат в тексте строку "подзапросы".
В результаты выборки будет добавлено поле author_name, которые будет содержать имя автора сообщения форума, полученное из таблицы users.
 
Страница: 1 + Создать новую тему