Re: Filtravimas SQL

Prasau patarkite, kaip reikia, kad kai vardai su "A" raide issifiltruoja, taip pat issifiltruotu jiems priskiriamos kainos.

Kodas pvz:

Select lentele.Vardas,
  vardas.kainos,
  If(Left(lentele.Vardas, 1) = 'A', lentele.Vardas, 0) As 'Pavadinimai_su_Araide',
  vardai.ID
From lentele
Group By lentele.Vardas

Re: Filtravimas SQL

???

Re: Filtravimas SQL

As noriu nerodyti visu kainu, o tik tas kurias SQL atfiltruos kartu su pavadinimais kurie kaip pvz. prasideda su raide A ...

PVZ.

Pavadinimai:     Kainos:

Pirmas              12
Antras_a           14
Antras_b           144
Antras_c           33
Trecias             35
Ketvirtas          36

Kaip padaryti kad nerodytu kainu, kurios nepriklauso pavadinimams prasidedantiems su A raide?

Re: Filtravimas SQL

rolka: lyg jau rašei, kad lentelę persidarei, kurioje būtų papildomas stulpelis su pirma raide iš pavadinimo. Jeigu to dar nepadarei - pasidaryk.

25 (edited by rolka 2010-05-11 11:09:20)

Re: Filtravimas SQL

As per mySql susikuriau lentelei dar viena lauka su pavadiniami_su_A_raide (pvz.) ir tada jau narsykle atvaizdavo atrusiuotus pavadinimus su A raide (List box lauke, nes man taip reikia) o kai priskiriu kainas kitam list box'ui, tai jis rodo visas kurios yra kainu lauke, o man reikia tik tas kainas, kurios yra skirtos pavadinimams prasidednatiems su_A raide:

Select lentele.Vardas,
  vardas.kainos,
  If(Left(lentele.Vardas, 1) = 'A', lentele.Vardas, 0) As 'Pavadinimai_su_Araide',
  vardai.ID
From lentele
Group By lentele.Vardas

Re: Filtravimas SQL

Tu ne taip supratai.

Tau reikalingas stulpelis, kuriame būtų visų pavadiimų pirmos raidės, ne tik "A".

Ir ta užklausa, kuria tu vis copy-paste, yra iš principo neteisinga, jau apie tai rašiau, pasižiūrėk į mano pateiktą pavyzdį atidžiau, kuo jie skiriasi.

27 (edited by rolka 2010-05-11 11:44:12)

Re: Filtravimas SQL

minde wrote:

Tu ne taip supratai.

Tau reikalingas stulpelis, kuriame būtų visų pavadiimų pirmos raidės, ne tik "A".


Ir ta užklausa, kuria tu vis copy-paste, yra iš principo neteisinga, jau apie tai rašiau, pasižiūrėk į mano pateiktą pavyzdį atidžiau, kuo jie skiriasi.

As susikuriu stulpeli su pavadinimai_su_A_raide ir ten persikelia visi pavadinimai prasidedantys is A raides, (man patari persikelti visu pavadinimu pirmasias raides (Kartais as naudoju ir tris raides pirmasias)) o kai reikes man is kitu raidziu pavadinimus , as susikursiu stulpeli is kitos raides pavadinimo. Ar ka ne taip darau, nes man pateike lentele kur viskas suplakta i kruva, o tas kad as viska isrusiuosiu ir sutvarkysiu esmes nevaidina todel, kad si lentele po kiek tai laiko vel atnaujins ir galiausiai viskas vel bus nuo pradziu

Na daleiskim tie pavadinimai turi prmasias raides tik A - B - ir C  kaip man reikia isrusiuoti tas kainas kurios priklauso tiems pavadinimams?
O del uzklausos, tai man svarbu kad gaunu norima rezultata, o del atsakymo greicio, tai si DB nebus velnisko dydzio.

Re: Filtravimas SQL

Rūšiavimas pagal kažkokį stulpelį yra atliekamas su operatoriumi ORDER BY. Galima nurodyti ir daugiau stulpelių, kad rūšiuoti pagal juos.

Re: Filtravimas SQL

operatorius ORDER BY isrusiuos man pavadinimus arba kainas pagal kriterijus, taciau neiseina padaryti taip, kad isrusiuotu tik tas kainas kurios priskirtos pavadinimams  prasidednatiems su A raide ir kitu nerodytu

Re: Filtravimas SQL

Tai papildomai atfiltruok su WHERE operatoriumi.

Re: Filtravimas SQL

Dekoju visiems uz pagalba, pasirodo viskas issiprende su  mysql> SELECT * FROM pet WHERE name LIKE 'bet koks simbilis%';

Re: Filtravimas SQL

Sekantį kartą prieš rašydamas dėl "naujų problemų" paskaityk tai, kas jau parašyta (-;