Avatar billede stig3 Mester
11. september 2001 - 09:29 Der er 8 kommentarer og
1 løsning

DISTINCROW

Jeg har en forespørgsel, hvor jeg bruger distinctrow. Alligevel får jeg dubliketter af ens rækker ????

Jeg har checket at værdierne i det udtrukne er ens.

Hvis jeg har en tabel:
id
fornavn
efternavn

og jeg så selecter:
select distinctrow fornavn, efternavn from minTabel

burde den så ikke kun udskrive Michael Jensen een gang selvom der er to id\'er med michael jensen.

Den forespørgsel som jeg har gang i inkluderer godt nok et join, men det skulle vel ikke gøre nogen forskel ?

(SQL server 6.5 og jeg trækker ud vha access)
Avatar billede terry Ekspert
11. september 2001 - 09:31 #1
Try DISTINCT
Avatar billede terry Ekspert
11. september 2001 - 09:32 #2
DISTINCT ROW looks at the underlaying table/fields.

DISTINCT looks at the fields in th equery!
Avatar billede stig3 Mester
11. september 2001 - 09:33 #3
Det har jeg prøvet, men fik så en:

ODBC kaldet mislykket !!!

Det er sammenkædede tabeller i et access program med underliggende SQL Server 6.5 til selve databasen.
Avatar billede stig3 Mester
11. september 2001 - 09:37 #4
Det er måske mere et access spørgsmål så ?????

Her er forespørgslen:
SELECT DISTINCT udvalg.Hvervskategori AS sort_kat, udvalg.udvalgskategori, udvalg.udvalgsnavn, udvalg.id_udvalg, udvalg.udvalgstype, udvalg.ligestillingskrav, udvalg.antal_møder, udvalg.antal_medlemmer, udvalg.bemærkning, udvalg.type, udvalg.periode, udvalg.hjemmel, udvalg.medlemskab, udvalg.bemærkninger, udvalg.upsize_ts, periode.valgperiode_slut, periode.valgperiode_start, [\"Indtast dato for hverv-udtræk\"] AS hverv_per_dato, udvalg.udvalgskategori
FROM (udvalg LEFT JOIN periode ON udvalg.id_udvalg = periode.id_udvalg) INNER JOIN dbo_søgeord ON udvalg.id_udvalg = dbo_søgeord.id_hverv
WHERE (((udvalg.udvalgsnavn) Like [forms]![F_hverv_liste]![F_hverv] And (udvalg.udvalgsnavn)<>\"amtsrådsmedlem\" And (udvalg.udvalgsnavn)<>\"erhvervsudvalg\") AND ((periode.valgperiode_slut)>=[\"Indtast dato for hverv-udtræk\"]) AND ((periode.valgperiode_start)<=[\"Indtast dato for hverv-udtræk\"]) AND (([forms]![F_hverv_liste]![F_søgeord]) Is Null)) OR (((periode.valgperiode_slut)>=[\"Indtast dato for hverv-udtræk\"]) AND ((periode.valgperiode_start)<=[\"Indtast dato for hverv-udtræk\"]) AND (([forms]![F_hverv_liste]![F_hverv]) Is Null)) OR (((udvalg.udvalgsnavn) Like [forms]![F_hverv_liste]![F_hverv] And (udvalg.udvalgsnavn)<>\"amtsrådsmedlem\" And (udvalg.udvalgsnavn)<>\"erhvervsudvalg\") AND ((periode.valgperiode_slut)>=[\"Indtast dato for hverv-udtræk\"]) AND ((periode.valgperiode_start)<=[\"Indtast dato for hverv-udtræk\"]))
ORDER BY udvalg.Hvervskategori, udvalg.udvalgskategori, udvalg.udvalgsnavn
WITH OWNERACCESS OPTION;
Avatar billede terry Ekspert
11. september 2001 - 09:48 #5
looks to me as though your original question was a bit misleading, not because it smaybe an Access question but because you were only refering to one table and a few fields.
Try altering the \"Unique Values\" parameter to YES. This is actually the same as using DISTINCT but I cant see why it doesnt work other than your query is too complex! I would suggest trying to build it up a little at a time to see where th eproblem lies. But DISTINCT is what you should use and NOT DISTINCTROW



Avatar billede stig3 Mester
11. september 2001 - 10:18 #6
Det er altid svært at forklare sit problem når man ikke ved hvad det er :-)

Jeg kan ikke finde stedet hvor man sætter \"unique vales\"

Jeg har også prøvet at lave en anden forespørgsel der henter rækkerne fra den ovenstående forespørgsel og brugt distinct her. Der får jeg ikke en odbc fejl, men den smider desværre ikke de overflødige rækker væk.
Avatar billede terry Ekspert
11. september 2001 - 10:40 #7
In queryy design view right click on the area where the tables are and choose properies from the menu. You should now see the properties for the query. Choose \"Unique Values\". But as I said this is actually teh same as writing DISTINCT in SQL view.
Sounds strange that the original query gives an ODBC error but another query using this query doesnt give an ODBC error. You must ensure that ALL selected fields are unique or you wount get what you expect!
Avatar billede stig3 Mester
11. september 2001 - 11:11 #8
Jeg fandt ud af en anden måde. Det kunne lade sig gøre at skære nogle data væk fra databasen så der ikke forekom ens rækker i forespørgslen.

Dit svar er sikkert rigtigt nok så jeg siger mange tak for hjælpen.
Avatar billede terry Ekspert
11. september 2001 - 11:12 #9
selv tak stig3!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester