powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 3.5 IBE дублирует строки
25 сообщений из 27, страница 1 из 2
FB 3.5 IBE дублирует строки
    #38427804
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте.
Есть файл БД, в нем поля 'DATETIME' и еще несколько с данными.
Делаю фильтр в IBExpert
Код: sql
1.
 ((DATETIME >= '01.10.2013 0:20:43') AND (DATETIME <= '01.10.2013 1:10:43')) 

и в результате получаю два диапазона данных.
Сначала - с '01.10.2013 04:00:00' по '01.10.2013 13:20:00 ', затем - с '01.10.2013 04:00:00' по '01.10.2013 19:59:59'.
Попробовал в php сделать запрос
Код: sql
1.
 "SELECT * FROM DATA WHERE ((DATETIME >= '01.10.2013 04:00:00') AND (DATETIME <= '01.10.2013 19:59:59'))" 


Результат тотже.
Не подскажете почему так?
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427814
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

FB3.5 не существует в природе. Открой для себя BETWEEN. Что у тебя там получается не понял.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427819
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ошибся в названии темы - Firebird 2.5
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427825
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

Неплохо бы увидеть набор данных, на которых, как ты думаешь, у тебя неправильный результат. Ну и полную версию запроса до кучи.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427826
oleg_m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101... и в результате получаю два диапазона данных.
Сначала - с '01.10.2013 04:00:00' по '01.10.2013 13:20:00', затем - с '01.10.2013 04:00:00' по '01.10.2013 19:59:59'.
Не подскажете почему так?
забыл отсортировать результат по своему полю DATETIME
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427833
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,
до кучи название DATETIME для поля явно неудачное.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427835
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,
BETWEEN пробовал - результат аналогичный.
Независимо от выбранного диапазона в фильтре, выводятся строки дважды
Например
Код: sql
1.
 ((DATETIME >= '18.09.2013 6:31:23') AND (DATETIME <= '18.09.2013 6:32:23')) 


выводит сначала с '18.09.2013 6:31:23' по '18.09.2013 6:32:23'
потом опять с '18.09.2013 6:31:23' по '18.09.2013 6:32:23'
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427841
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

Таких строк там 2.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427843
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Симонов Денисnik2101,
до кучи название DATETIME для поля явно неудачное.
Да ладно?
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427854
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
CyberMax,

оно хоть и не является зарезервированным, но всё равно я бы опасался так называть. Смутило ещё, что оно здесь подсветилось как ключевое (наверное из MSSQL).
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427855
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денисnik2101,
до кучи название DATETIME для поля явно неудачное.
Не мною придумано и изменить нельзя
CyberMaxnik2101,

Таких строк там 2.
Реально строк в диапазоне с '18.09.2013 6:31:23' по '18.09.2013 6:32:23' - 9 шт, а выводит 18
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427863
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

варианта два:
- битый индекс по DATETIME
- их всё таки 18
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427879
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,
Код: sql
1.
SELECT COUNT(*) FROM DATA WHERE ((DATETIME + 0 >= '01.10.2013 04:00:00') AND (DATETIME + 0 <= '01.10.2013 19:59:59'))

что дает?
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427886
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поправлюсь. Вот так сколько пишет?
Код: sql
1.
SELECT COUNT(*) FROM DATA WHERE ((DATETIME + 0 >= '18.09.2013 6:31:23') AND (DATETIME + 0 <= '018.09.2013 6:32:23'))
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427922
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CyberMaxПоправлюсь. Вот так сколько пишет?
Код: sql
1.
SELECT COUNT(*) FROM DATA WHERE ((DATETIME + 0 >= '18.09.2013 6:31:23') AND (DATETIME + 0 <= '018.09.2013 6:32:23'))


Array ( [COUNT] => 18 )
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427926
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

Кто-то влил два раза данные. Разбирайтесь.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38427986
Arioch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ещё можно было

Код: sql
1.
SELECT D.RDB$DB_KEY, D.* FROM DATA D WHERE ((DATETIME >= '01.10.2013 04:00:00') AND (DATETIME <= '01.10.2013 19:59:59'))



Но только делать это надо в isql, а не в IBExpert и аналогах
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38428007
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ок, спасибо за помощь.
Будем думать как отбросывать появляющиеся "дубли"
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38428010
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,

Лехко. GROUP BY DATETIME.
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38430604
Марат Сафин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101,
DISTINCT всё сделает за вас :)
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38430606
Фотография CyberMax
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марат Сафин,

Только без применения индекса (если он есть, конечно).
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38430648
Евгений Болтик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Марат Сафинnik2101,
DISTINCT всё сделает за вас :)

Ему он не совсем поможет скорей всего. Надо при вставке убирать дубли или база распухнет и он придет снова с вопросом.

nik2101
Если все зависит только от дат, то вставляй к примеру через "update or insert .. MATCHING (DATETIME)".
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38431094
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
База наполняется сторонним софтом, я из нее только читаю.
Вобщем использование GROUP BY решило проблему
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38431178
Евгений Болтик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2101База наполняется сторонним софтом, я из нее только читаю.
Вобщем использование GROUP BY решило проблему

Понятно.

Тогда DISTINCT проще по той причине, что не надо будет перечислять поля которые ты в группировке сейчас стал перечислять.

Но все же данные можно было как то без дубляжей ложить.
Если не трудно расскажи (глядишь кто, что еще подскажет): сторонний софт напрямую данные в сервер вставляет или через файл обмена?
...
Рейтинг: 0 / 0
FB 3.5 IBE дублирует строки
    #38431402
nik2101
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений БолтикПонятно.

Тогда DISTINCT проще по той причине, что не надо будет перечислять поля которые ты в группировке сейчас стал перечислять.

Но все же данные можно было как то без дубляжей ложить.

Есть предположние что дублирование происходит при получении данных в течение одной секунды.
Евгений БолтикЕсли не трудно расскажи (глядишь кто, что еще подскажет): сторонний софт напрямую данные в сервер вставляет или через файл обмена?
Насчет этого сложно чтото утверждать. На первый взгляд локально на рабочем месте только база (ну и плюс несколько файлов xml со всякими событиями). Локальная база синхронизируется с удаленной базой в инете, так что сказать как туда пишется не могу.
...
Рейтинг: 0 / 0
25 сообщений из 27, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / FB 3.5 IBE дублирует строки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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