Zliczanie pozycji w komórce oddzielonych enterem

0

witam
Potrzebuje pomocy w zapytaniu które zwróciło by mi ilość podwójnych wystąpień tych samych numerów w jednej komórce oddzielonych enterem.

Dokładnie chodzi o to iż mam formularz w pole jedno są zaczytywane kody kreskowe z umów czytnikiem,
umowy mogą być kopia i oryginał taki sam kod, oraz sam oryginał, jeden kod. i teraz muszę wiedzieć które numery występują podwójnie.
np: pole na formularzu 'barkod umów'
AB1234
AB1234
AS1235
WE3456

na teraz mam zapytanie które mi wrzuca do tabeli sql na podstawie zaczytanych kodów pozycje z bazy jak [Nazwa Odbiorcy] i [Nr Umowy]

select ROW_NUMBER() OVER ( ORDER BY WFD_NRUMOWY ) AS [Lp.] , WFD_NAZWAO as [Nazwa Odbiorcy], WFD_NRUMOWY as [Nr umowy] from dbo.baza_umowy
where WFD_NRUMOWY IN
(SELECT item FROM [dbo].[SplitToTable]('barkod umów', CHAR(10)) )

a potrzebuję do drugiej zaczytać te które są w kopi i oryginale czyli ten sam kod został zczytany 2 razy w polu 'barkod umów'

0

Należy zacząć od tworzenia POPRAWNYCH schematów bazy danych. Rozumiem że nie dało sie tu zrobić normalnego powiązania 1:n i przechowywać tych barkodów po ludzku, po jednym w jednym rekordzie? Wtedy zapytanie którego szukasz byłoby trywialnym self-inner-jonem i where id1 > id2.
Skoro już zrobiłeś takie nie-wiadomo-co to może przynajmniej zrobisz Widok który będzie zwracał tabelę w postaci podzielonej i potem zrobisz już normalne zapytanie z self-joinem.

Przy poprawnym schemacie bazy danych wystarczyłoby:

select t1.id, t2.id, t1.kod 
from kody as t1
inner join kody as t2 on t1.kod = t2.kod
where t1 > t2
0

To nie tak
barkod = numer umowy czyli każdy jest przechowywany w oddzielnym rekordzie w bazie.

Teraz chodzi o to że jest plik umów z tymi barkodami i kobietka musi je gdzieś wysłać wiec otwiera formularz wybiera kontrachenta , staje w polu barkod i jedzie z czytnikiem po umowach np ok 100 sztuk niektóre są w 1 egzemplarzu niektóre w 2 , i na podstawie zczytanych w polu kodów generuje się tabela z pozycjami umów sczytanymi którą drukuje jako załącznik do wysyłanych umów.
teraz potrzebuje wstawić drugą tabelę żeby zaznaczyć że umowy z tymi numerami to pojedyncze sztuki . ( lub podwójne.)

0

No to w takim razie masz zapytanie które podałem wyżej. Robi dokładnie to o co pytasz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1