Witam,
mam wyzwanie, problem się ciągnie dość długo ale teraz nastała potrzeba zaingerowania w ten problem.
otóż to mam w tabeli krotkę typu varchar(400) o nazwie dni i w niej ciągi znaków 0,1,3,6. drugą typu bit o nazwie zmiana. Dla zmiany=0 ciąg jest oryginalny a dla zmiany=1 ciąg modyfikujący.
dajmy na to, że mam wybrane 4 wpisy
id | typ | dni |
3 | 0 | 000111100000 |
5 | 1 | 011110000000 |
8 | 1 | 000000300000 |
12 | 1 | 000000001100 |
a chciałbym osiągnąć coś takiego sumując te krotki do jednej
011111001100
w sumie
jeżeli 1 w oryginale i 1 w zmianie to 1;
jeżeli 1 w oryginale i 0 w zmianie to 1;
jeżeli 1 w oryginale i 3 w zmianie to 0;
jeżeli 1 w oryginale i 6 w zmianie to 0;
3 i 6 występują tylko w zmianach
nie eleganckie to wydaje mi się bym dla 3tys grup robił pętle po wszystkich dniach i porównywał te ciągi znak po znaku.
Czy istnieje możliwość szybszym sposobem uzyskania wyniku? Jeśli tak to jakim? Proszę o pomoc.