MS SQL Serverben hogyan lehetne megoldani az alábbit?
Egy vállalkozásos adatbázissal dolgozom, és lehet egy vállalkozás többször is az adatbázisban, ezt próbálom kiszűrögetni, és inaktiválni az egyiket. Ezt simán rákeresek két ID-ra (elsődleges kulcs), WHERE (dbID IN (8483, 205)) és csekkolom. Viszont, ha teszem azt 20 ID-t írok ide, akkor szépen 20 vállalkozást kilistáz, viszont dbID alapján növekvő sorrendbe teszi (helyesen), de nekem úgy lenne jó, hogy amilyen beviteli sorrendben én írtam az ID-kat, mert vélhetően azok lesznek duplikációk, így mindig egymás alatt lennének a kívánt elemek. Most egy gagyi megoldással csinálom, hogy teszek még a végére egy ORDER BY dbNEV DESC-et, így úgy ahogy egymás alatt lesznek a kívánt tételek, úgy 90%-os hatékonysággal.
Viszont a vállalkozások neve is eltérhet, és ha eltér, akkor nyilván totál más helyre kerül, teszem azt XY cég, és "XY cég", ettől felborul a jó sorrend. Szóval lehet ráerőltetni ezt, hogy abban a sorrendben listázza, ahogy az egymás után következik?
Szia!
Keress rá a GROUP BY-ra. ez listáz minden olyan találatot ami duplikálva van. Én rányomnám az adószámra. Az egy vállalkozás esetén azonos.
SELECT * FROM vallalkozasok WHERE 1 GROUP BY adoszam;
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!