powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / проблема оптимизации сторна
4 сообщений из 4, страница 1 из 1
проблема оптимизации сторна
    #38095487
_mun4kin_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
есть таблица вида

name | i | name1 | i1 | var |
-----------------------------------------------
a | 1 | null | null | text
a | 1 | null | null | text
a | 1 | null | null | text
a | 1 | null | null | text
a | 1 | null | null | text
...
Рейтинг: 0 / 0
проблема оптимизации сторна
    #38095503
_mun4kin_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сорь

есть таблица вида

name | i | name1 | i1 | var |
-----------------------------------------------
a | 1 | null | null | text
b | 2 | a | 1 | text1
c | 3 | b | 2 | text2
d | 4 | null | null | text3
e | 5 | null | null | text4
_________________________________________
create table t1 (
name char(2),
i integer,
name1 char(2),
i1 integer,
var char(10)
);

insert into t1 values (" a", 1, null,null,"text");
insert into t1 values (" b", 2, "a",1 ,"text");
insert into t1 values (" c", 3, "b",2,"text");
insert into t1 values (" d", 4, null,null,"text");
insert into t1 values (" e", 5, null,null,"text");

__________________________________________
нужно избавится от лишних записей и привести таблицу к виду

c | 3 | b | 2 | text2
d | 4 | null | null | text3
e | 5 | null | null | text4
убираем строчку если есть повторение name и i
в name и i1

собственно проблема в скорости записей в табице около 40-50 млн + 20-30 полей аналогов var
то что я написал работает достаточно медленно 3-4 секунды надо сделать чтобы было <1


var_storn = SELECT
name,i,name1,i1,var
from t1
where (name,i ) NOT IN (SELECT
(name1,i1
FROM t1 where name!='')
;
или что то подобное(выдрал из кода кусок и сменил переменные) как я понимаю проблема в подзапросе
...
Рейтинг: 0 / 0
проблема оптимизации сторна
    #38095597
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_mun4kin_собственно проблема в скорости записей в табице около 40-50 млн + 20-30 полей аналогов var
то что я написал работает достаточно медленно 3-4 секунды надо сделать чтобы было <1
Во первых, я не думаю что эта операция настолько часто выполняется чтобы был смысл бороться за секунды.
Во вторых, у тебя задача поставлена не полно. Если у тебя есть две записи совпадающие по указанному критерию, ты выбираешь одну из них - какую? Если у тебя будет три записи с совпадением, какую из них ты удалишь а какую оставишь?
В третьих, у тебя примеры не верны. Сделай реальные тестовые скрипты с реальными тестовыми данными.
И не забывай про кнопки SRC и CSV. Прочитай FAQ форума о том как оформлять сообщения.
...
Рейтинг: 0 / 0
проблема оптимизации сторна
    #38095771
_mun4kin_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
реальную таблицу сделать не могу она на сервере. секунды оч критичны это маленькая часть большого целого суммарное время не должно превышать 5 сек сейчас это работает около 3 минут. я переношу sql на sap hana sql. тестовая таблица на sql

Код: sql
1.
2.
3.
4.
5.
CREATE COLUMN TABLE "STUDENT05"."ANTON" ("NAME" VARCHAR(1),
	 "I" INTEGER CS_INT,
	 "NAME1" VARCHAR(1),
	 "I1" INTEGER CS_INT,
	 "TEST" VARCHAR(10))



заполнение

nameiname1i1testa1? ?a1b2a1a2c3??a3d4b2a4



рабочий скрипт
Код: sql
1.
2.
3.
var_out =select NAME,I,TEST from 
 	 "STUDENT05"."ANTON" 
 	WHERE  ("NAME","I") NOT IN( SELECT "NAME1","I1" FROM "STUDENT05"."ANTON"WHERE "NAME1" <>'') 



результат
nameitestс3a3d4a4
да еще not in или in не поддерживается быстрым движком на котором надо сделать.name и i ключи
алгоритм реализации без in
1.разделяю на 2 таблицы t1 name,i в которую записываю доп столбец равный '1' и t2 name1,i1 +доп столбец равный '2'
2. делаю union t1 и t2
3. агригирую по добавленному столбцу
4. откидываю значения >1
5. джойню с исходной таблицей
sql скрипт там не пишется позже могу скинуть если не понятен алгоритм. хочется найти решение с минимальным временем
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / проблема оптимизации сторна
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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