Текущий архив: 2002.07.15;
Скачать: CL | DM;
ВнизЗапрос Найти похожие ветки
← →
Link (2002-06-19 11:37) [0]Прошу помощи! Учусь работать с базами и составил запрос
select
dst_ip ,
sum(sent),
sum(recv)
from traffic
WHERE (SELECT DATEPART(mm, today)) = "2"
and(SELECT DATEPART (dd, today)) between "20" and "28"
and
sent > 0
and recv >0
group by dst_ip
Подскажите, что не так в шестой и седьмой строчке.
Заранее спасибо!
← →
GT-9121A (2002-06-19 11:40) [1]какая база, какая ошибка?
← →
Link (2002-06-19 11:47) [2]База Paradox.
Если интересуют поля, то
Dst_ip sent recv today
А ошибку выдаёт: лишняя скобка, когда убираешь, то лишнее between и так далее...
← →
wicked (2002-06-19 11:47) [3]судя по функциям и синтаксису - это mssql...
а ошибка может быть в том, что в mssql нету такой функции, как today... ведь это не поле в таблице traffic?...
если имелась в виду текущая дата, то надо использовать getdate()...
и еще... в данном случае select"ы под where можно не использовать - уж очень неудобно читать...
← →
wicked (2002-06-19 11:49) [4]2 Link
а paradox имхо вообще такой запрос не проглотит...
← →
Link (2002-06-19 11:52) [5]А если имеется в виду дата в поле Today?
← →
wicked (2002-06-19 11:58) [6]2 Link
повторяю - запрос для local sql засложен... он не понимает вложенных запросов... попробуй поубирать select"ы...
← →
MOA (2002-06-19 11:59) [7]Это MSSQL, видимо?
today - это поле таблицы? Если нужна текущая дата, то в MSSQL это функция GETDATE().
Далее, по описанию DATEPART возвращает ЦЕЛОЕ (integer), т.е.
DATEPART(mm, today)=2 (без кавычек). Ну и второй аналогично.
Далее, непонятны 2 SELECT внутри - если today - это поле таблицы, то какой? Если это текущая дата - нет связи с таблицей traffic.
Т.е. варианты:
1. если today - это поле traffic
select
dst_ip ,
sum(sent),
sum(recv)
from traffic
WHERE DATEPART(mm, traffic.today) = 2
and DATEPART(dd, traffic.today) between 20 and 28
and
sent > 0
and recv >0
group by dst_ip
2. Если today - это попытка получить текущую дату, то непонятно о чем речь.
Удачи!
← →
MOA (2002-06-19 12:07) [8]Пока писал ответ - обнаружилось, что за база. Сорри за MSSQL. А в Paradox есть DATEPART?
И в любом случае - ошибка во внутренних селектах - что же там выбирается? Откуда? Где связь с таблицей? (То что это поле таблицы - это не связь. Во вложенных SELECT FROM отсутствует. Откуда теперь брать today?). И движку это тоже неясно.
Удачи!
← →
Link (2002-06-19 12:21) [9]Не знаю. Я только пятый день за базами. Может и нет в Paradox Datepart. Остальные варианты не помогли. А есть в Paradox эквивалентная функция? Просто очень нужно дату расчленить.
← →
Link (2002-06-19 12:35) [10]Ребят, а чё у меня, когда создаю MSSQL таблицу, пишется, что alias не того типа. Тут что по-особому надо имя придумывать?
← →
MOA (2002-06-19 12:42) [11]Если Вы Все же работаете с MSSQL и только начали проект - IMHO, лучше ADO.
А кто говорит про тип? Что именно говорит? Как именно Вы создаёте таблицу?
← →
Link (2002-06-19 13:04) [12]Существует программа на SQL и меня попросили написать к ней приложение на Delphi. Самой базы у меня нет, мы не успели её скачать. Но я сделал схожую базу в Paradox. И выясняется, что запросы соответствуют MSSQL. Я попробовал сделать такую же базу в MSSQL, а Database Desktop говорит, что Chosen alias is not of type MSSQL.
← →
fnatali (2002-06-19 13:12) [13]>Link (19.06.02 13:04)
Дело в том, что синтаксис SQL для разных СУБД несколько отличается. И запрос, написанный для MSSQL не обязательно будет работать для Paradox.
← →
VAleksey (2002-06-19 13:26) [14]Local SQL понимает вложенные запросы.
в Local SQL ЕСТЬ функция которая может расщепить дату. И вообще см. LocalSQL.hlp
← →
MOA (2002-06-19 13:58) [15]2Link: Когда создаете алиас на MSSQL (через БДЕ) скажите тип драйвера MSSQL. В именах - ничего особенного.
Однако, если Вам нужно просто записать таблицы Paradox в MSSQL, воспользуйтесь DTS - это проще. И не без пользы, если Вы будете работать с MSSQL.
И не забудьте поставить клиента!
А запросы - похожи, но не настолько. Такие - да (ну, datepart не в счет). Но очень многое по-другому. Начиная с идеологии построения системы и заканчивая более развитым языком запросов.
Удачи!
Страницы: 1 вся ветка
Текущий архив: 2002.07.15;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.012 c