Topic: irasu isrinkimas

Sveiki,

pabandysiu paaiskinti kokios uzklauso nepavyksta sugalvoti(o gal taip ir neina, kaip as noreciau).

yra lentele

id id1 id2 name name1
1   1   1     a1      b1
2   1   1     a2      b2
3   1   2     a2      b2
...

kaip matot 2 ir 3 israsu stulpeliu name ir name1 yra identiski
man reikia pasirasyt tokia uzklausa, kuri isrinktu is tokios lenteles visus irasus ir nedubliuotu tokiu irasu, kuriu name ir name2 sutapma, o isimtu kaip viena irasa.

Ar tai imanoma?

Gal padesite kas nors :)

Re: irasu isrinkimas

La,

Vien tos sąlygos, kuria pateikei, neužtenka, nes nežinia kokios reikšmės tave domina iš kitų stulpelių. Tarkim pateiktame pavyzdyje 2-os ir 3-ios eilutes name ir name1 sutampa, bet skiriasi id ir id2 reikšmės.

O įmanoma yra viskas.

Re: irasu isrinkimas

2,3 irasu tolimesniu stulpeliu reiksmes taip pat sutampa, taigi tos dvi eilutes is esmes vienodos, skiriasi tik id id1 id2.

Re: irasu isrinkimas

Tai ir klausiu, kurios reikšmės tave domina iš id, id1 ir id2 stulpelių ;) Ar nesvarbu kurios?

Re: irasu isrinkimas

domina, kad jei id1(2 iraso)=id1(3 iraso) ir name(2 iraso)=name(3 iraso) ir name1(2 iraso)=name1(3 iraso), neisrinktu abieju eiluciu kaip atskiru irasu, o tiesiog isrinktu kaip viena eilute. Ar suprantamiau parasiau?

Re: irasu isrinkimas

Pirmam post'e rašei, kad domina tik name ir name1 unikalūs įrašai, o dabar jau prisidėjo ir id1. Bet ne tame esmė, esmė, kad neaišku kokias reikšmes nori kad rodytų tų stulpelių, kurių reikšmės skiriasi.

Tarkim pateiktame pavyzdyje antroje ir trečioje eilutėje sutampa id1, name ir name1 stulpelių reikšmės, bet id stulpelio reikšmė skiriasi. Tu nori išvedinėti juos kaip vieną eilutę - kokios reikšmės bus stulpelyje id1, name ir name1 aišku, nes jos sutampa, o kurią reikšmę imti iš kitų stulpelių nepasakei.

Bendru atveju gali daryti taip:

SELECT *
FROM lentele
GROUP BY id1, name, name1

Re: irasu isrinkimas

aciu uz ideja, jau pasidariau :)