Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
1

Как правильно написать запрос

23.11.2015, 20:22. Показов 546. Ответов 7
Метки нет (Все метки)

Привет,
Пишу впервые сложный запрос (по крайней мере для меня)
и так:
Есть таблица

 
КОД Имя Адрес Дата
123 Иван Киев 01.09.2015
321 Петр Киев 05.09.2015
231 Руслан Москва 05.09.2015
123 Иван Киев 10.09.2015
123 Иван Киев 15.09.2015

Как сделать выборку (Код=123) с наибольшей и наименьшей датой

спасибо за помощь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.11.2015, 20:22
Ответы с готовыми решениями:

Как правильно написать запрос
Очень нужна помощь с запросом. Есть товар 30767 для которого рассчитывается расчетная...

Как правильно написать запрос с group by?
Выручайте! закончил работать над веб апликацией, застрял на последнм =( надо узнать сколько...

Правильно ли организовано хранение дат? Как написать запрос?
Таблица для хранения дат: Поля: ID, Тип, Родитель, День, Месяц, Год (День, Месяц, Год могут быть...

Правильно написать запрос, исключив деление на ноль
Всем здравствуйте! подскажите, пожалуйста, кто знает, как правильно написать запрос? нужно...

7
21 / 21 / 12
Регистрация: 24.10.2014
Сообщений: 53
23.11.2015, 20:36 2
Так?

T-SQL
1
2
3
4
5
6
7
select
    [КОД] code,
    max([Дата]) maxDate,
    min([Дата]) minDate
from [Таблица]
where [КОД] = 123
group by [КОД]
1
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
23.11.2015, 21:07  [ТС] 3
Добавлено через 30 секунд
operaphantom,

Ругается Incorrect syntax near 'Дата'.

Добавлено через 1 минуту
я так понимаю, что проблема в group by
0
3202 / 1941 / 688
Регистрация: 02.06.2013
Сообщений: 4,751
23.11.2015, 22:20 4
IvanOK, предлагаете угадать в чем ошибка, не видя вашего запроса?
0
693 / 99 / 10
Регистрация: 25.06.2011
Сообщений: 718
25.11.2015, 20:20  [ТС] 5
invm, а запроса нет
так как прошу написать ваш вариат

T-SQL
1
2
3
4
5
6
7
select
* * [КОД] code,
* * max([Дата]) maxDate,
* * min([Дата]) minDate
from [Таблица]
where [КОД] = 123
group by [КОД]
не работает
0
3202 / 1941 / 688
Регистрация: 02.06.2013
Сообщений: 4,751
25.11.2015, 20:39 6
IvanOK, соберитесь с мыслями и покажите что и как вы делаете. Заодно поясните что, в вашем понимании, означает "не работает".
0
21 / 21 / 12
Регистрация: 24.10.2014
Сообщений: 53
25.11.2015, 22:22 7
Цитата Сообщение от IvanOK Посмотреть сообщение
не работает
Обидно как-то. В таком запросе с ошибками не разгуляешься.

Покажите, пожалуйста, точные названия таблицы и колонок и скрин из SSMS с результатом выполнения запроса.
Цитата Сообщение от IvanOK Посмотреть сообщение
T-SQL
1
2
3
4
5
6
7
select
* * [КОД] code,
* * max([Дата]) maxDate,
* * min([Дата]) minDate
from [Таблица]
where [КОД] = 123
group by [КОД]
А астериски как появились в запросе? Или это случайность?
0
91 / 56 / 12
Регистрация: 02.10.2008
Сообщений: 550
26.11.2015, 15:18 8
Согласен, что за символы * и определитесь с названием колонок
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SET LANGUAGE RUSSIAN
CREATE TABLE #MyTable (КОД int, Имя nvarchar(25), Адрес nvarchar(50), Дата DateTime)
 
INSERT INTO #MyTable VALUES (123, 'Иван', 'Киев', '01.09.2015')
INSERT INTO #MyTable VALUES (321, 'Петр', 'Киев', '05.09.2015')
INSERT INTO #MyTable VALUES (231, 'Руслан', 'Москва', '05.09.2015')
INSERT INTO #MyTable VALUES (123, 'Иван', 'Киев', '10.09.2015')
INSERT INTO #MyTable VALUES (123, 'Иван', 'Киев', '15.09.2015')
 
 
select
    [КОД] code,
    max([Дата]) maxDate,
    min([Дата]) minDate
from #MyTable
where [КОД] = 123
group by [КОД]
 
DROP TABLE #MyTable
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2015, 15:18

Как правильно составить запрос?
БД 'Морской порт' Таблица кораблей: CREATE TABLE Ships ( id_ship INT NOT NULL PRIMARY KEY...

Как правильно построить запрос?
Собственно вся проблема продемонстрирована на прилагаемом рисунке. В некой таблице, существуют два...

как правильно выполнить запрос?
$result = mysql_query("SELECT * FROM messages WHERE `num`=".$stat." ORDER BY id DESC LIMIT...

Как правильно создать запрос на выборку?
Доброго времени суток, уважаемые форумчане! Подскажите, как создать следующий запрос в базу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru