|
|
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Всем привет! Как в цикле пройти все строки таблицы и перенести все изменившиеся значения в другую таблицу, сортировка в таблице по идентичному полю. Тоесть, у меня в таблице записаны значения 1,2,3,3,4,5,5,5,...,0,1 ,каким образом можно выбрать те данные, которые не повторяются? (не считая варианта с distinct) Заранее благодарен! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 12:48:57 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
RE каким образом можно выбрать те данные, которые не повторяются как вариант, попробуй Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 12:53:18 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Если упоминает distinct, то ему (и из повторяющихся данных) строчки по одному экземпляру все же нужны, так что HAVING здесь не нужен... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 14:58:19 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
2 Максим Я не понял что Вам нужно, но одназначно про цикл нужно забыть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 15:00:57 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
У меня данные, которые поступают со счетчика, но они пишутся каждую секунду, а показания счетчика меняются не каждую секунду. Мне надо выбрать данные, которые подряд не повторяются, а именно подряд, потому что числа ходят по кругу(0,1,2,3,...99,0,1,2,...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 15:46:52 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Может лучше не писать повторяющиеся строчки, чем потом пытаться их выкинуть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 15:51:31 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Если SQL2K, то можно для другой таблицы instead of триггер на инсерт сделать, в котором и отсекать дубли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 15:59:01 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Дело в том, что не все поля в записи повторяются, а только то поле, в которое записываются показания счетчика, а поле в которое пишется дата и время (оно в данном случае и выступает идентификатором) не повторяется!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 16:23:01 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
I'm back! (отобедамши) :) Логически все равно происходит дублирование информации, поскольку до следующего изменения показаний датчика (датчик-счетчик - тоже черезчур хитро, но это другая тема) значение колонки показаний не меняется ! Не надо хранить дублирующие строки, отличающиеся лишь промежуточными показаниями даты/времени, ни к чему это. (Время ведь есть непрерывная субстанция...) Опять же, возможно, вместо 98, 99, 0, 1... лучше регистрировать 98, 99, 100, 101... Но это все же действительно другая тема... ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 17:12:43 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Проблема еще и в том, что в таблицу данные пошу не я, а клиентское приложение, которое опрашивает контроллер каждую секунду и записывает показания в таблицу! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 18:27:22 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Версия сервера какая? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 18:33:37 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
SQL2K ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 18:40:02 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
2Максим Покажите структуру таблицы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 19:42:41 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Имеет место путаница с этим полем, в котором 1,2,2,3... В tbl1 dt - datetime (ключ), vl (любое значение) dt - уникально каждую секунду, отобрать "сладкие парочки с уникальными vl. Вроде и раз-два-три не надо. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 19:49:21 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Да нет, там значения циклически повторяются. При условии вставки каждым инсертом только одной записи можно: 1) сделать дополнительный столбец-флаг с дефолтом (0) 2) на табличку, в которую пишется информация с датчика (FirstTable) повесить триггер Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 20:16:06 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
А если надо уже существующее преобразовать - то можно создать параллельную табличку и, не спеша, курсорчиком по одной записи то, что нужно и повставлять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 20:18:26 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Информация для размышления: - Как часто нужно вычищать информацию и скидывать ее в другую таблицу? - Что сделает клиентское приложение, если его вставку откатить в триггере? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.11.2002, 21:21:14 |
|
||
|
Как в цикле пройти все строки таблицы ...
|
|||
|---|---|---|---|
|
#18+
Вот реальная иллюстрация для обсуждения "проблемы" - естественные ключи против суррогатных. В данной задаче время (с дискретностью 1 сек.) - хороший естественный ключ, но нормального решения он не дает, т.к. записывается с показаний датчика с определенной погрешностью. При вводе в таблицу хранения суррогатного ключа (целочисленный автоинкремент) - задачка решается с "пол-тычка": Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.11.2002, 12:52:52 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32064983&tid=1819036]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
58ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 399ms |

| 0 / 0 |
