powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связь между таблицами по полю DATETIME
6 сообщений из 6, страница 1 из 1
Связь между таблицами по полю DATETIME
    #32206679
Чумаков А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ADP 2000, SQL 2000
Есть ХП такого вида:

SELECT DISTINCT
SUM(TehPD_Documents.CountOtpr) AS Sum_CountOtpr,
TehPD_Documents.NumberDoc,
SUM(TehPD_Documents.Summa) AS Sum_Summa,
SUM(TehPD_Documents.SummaComission) AS ServRub,
DollarAndFrank.Date
FROM dbo.TehPD_Documents INNER JOIN
dbo.DollarAndFrank ON
dbo.TehPD_Documents.Date = dbo.DollarAndFrank.Date
GROUP BY dbo.TehPD_Documents.NumberDoc,
dbo.DollarAndFrank.Date

Поля Date в обеих таблицах smalldatetime
Но проблема в том, что в DollarAndFrank дата хранится как dd.mm.yy,
а в TehPD_Documents некоторые поля есть в формате dd.mm.yy, а некторые еще и со временем (dd.mm.yy hh:mm).
В связи с этим записи за числа, которые в виде dd.mm.yy hh:mm, не сопоставляются тем, коорые dd.mm.yy

Т.е. 12.07.03 <> 12.07.03 12:00:00

Как обойти эту проблему ?
...
Рейтинг: 0 / 0
Связь между таблицами по полю DATETIME
    #32206682
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Как обойти эту проблему ?

Конвертни в один формат:
или все в ввиде 12.07.03 12:00:00
или ввиде 12.07.03.
и связывай
...
Рейтинг: 0 / 0
Связь между таблицами по полю DATETIME
    #32206700
Чумаков А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в таблице не нашел как задать приведение к одному формату
в ХП тоже (по крайней мере по дате что типа Format(Date, "mm\/dd\/yy"))

сделал в ХП так CONVERT(INT, Date)
вроде работает, но могут ли быть подводные камни при этом ?
...
Рейтинг: 0 / 0
Связь между таблицами по полю DATETIME
    #32206705
VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В развитие идеи Senin Victor
Код: plaintext
convert(varchar( 20 ),dbo.TehPD_Documents.Date,  104 )= convert(varchar( 20 ),dbo.DollarAndFrank.Date, 104 )
Совет - используй алиасы для имен таблиц .нам всем будет легче :)
...
Рейтинг: 0 / 0
Связь между таблицами по полю DATETIME
    #32206723
VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделал в ХП так CONVERT(INT, Date)
вроде работает, но могут ли быть подводные камни при этом ?

Могут.Лучше в char(10) или varchar(10)
Длина char/varchar выбирается в зависимости от формата даты.
например для dd.mm.yyyy надо 10 символов
...
Рейтинг: 0 / 0
Связь между таблицами по полю DATETIME
    #32206908
Чумаков А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо всем!
Сделал CONVERT(CHAR(10), Date, 104)
Все ОК!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связь между таблицами по полю DATETIME
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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