Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Логические операции с большими объемами данных.
|
|||
|---|---|---|---|
|
#18+
Имеется: два поля типа image, в которых хранятся бинарники длинной порядка 3Мб. Нужно : получить бинарник, путем побитового AND (или OR) двух исходных. Приветствуются любые идеи... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2001, 18:44 |
|
||
|
Логические операции с большими объемами данных.
|
|||
|---|---|---|---|
|
#18+
В принципе, тип image даже неявно можно привести к binary. Но в сиквеле побитовые операции разрешены только для целочисленных типов данных. Выполнить операции для binary или varbinary нельзя. Я вижу пока 2 выхода: - читать из исходных данных по куску, кратному int (или bigint), проводить операции между полученными кусочками, сливать в конец накапливаемого результата - проводить эти действия, пользуясь языком, который приспособлен для них (типа С++), но тут возникнет вопрос трафика... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2001, 06:13 |
|
||
|
Логические операции с большими объемами данных.
|
|||
|---|---|---|---|
|
#18+
Ничего хорошего не получиться. Один из операндов должен быть типа int или ему подобного. Придется циклом пробегать по всей строке. Будет сильно тормозить. create table #t(s1 image, s2 image, dest image null) insert #t select 0x1111112211111133, 0x01010101ffffffff, 0x declare @i int, @b binary(1), @s1 binary(1), @s2 binary(1) DECLARE @ptrval binary(16) SELECT @ptrval = TEXTPTR(dest), @i=1 from #t while @i<=(select datalength(s1) from #t) begin select @s1=substring(s1,@i,1),@s2=substring(s2,@i,1) from #t select @b=@s1 & /* или "|" */ convert(int,@s2) UPDATETEXT #t.dest @ptrval null null @b select @i=@i+1 end select * from #t Может кто предложит лучше, но сомневаюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2001, 06:15 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=46&tid=1825634]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
2ms |
| others: | 265ms |
| total: | 368ms |

| 0 / 0 |
