Phorum.ro
Your Avatar Welcome to Phorum.ro!
If you haven't registered yet, click here!
Attention Visitor:
You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.
Du-te înapoi   Phorum.ro > Web Design & Web Development > Programare > PHP > Discutii Generale

Discutii Generale Discutii generale despre PHP.

Răspunde
 
Thread Tools Moduri de afișare
Vechi 11.03.2007   #1
websku
32-Bit Member
 
websku's Avatar
 
Data înregistrării: 18.06.2005
Locație: Ramnicu Valcea
Mesaje: 120
Rep Power: 0
websku is on a distinguished road
Trimite un mesaj prin Yahoo pentru websku
Implicit query

am un tabel in mysql cu 3 coloane: ID, Nume, User pentru mai multi useri indexate dupa user si dupa id.
Stiind ca totii userii au cate 2 linii comune de genul 1,'Muzica', 'Alex' si 2, 'MP3', 'Alex' si mai au si alte linii care nu mai sunt comune, cum pot realiza un query pe acest tabel astfel incat sa imi intoarca liniile comune sortate dupa ID, urmate de liniile care nu mai sunt comune sortate dupa NUME


Ma paote ajuta cineva? Am incercat cu union select dar nu am reusit, pe urma am incercat sa unesc rezultatul de la 2 query dar iar nu am reusit.
websku is offline   Reply With Quote
Sponsored Links
Vechi 11.03.2007   #2
Luxian
Spamofob
 
Luxian's Avatar
 
Data înregistrării: 26.06.2006
Locație: Timișoara
Vârsta: 25
Mesaje: 398
Rep Power: 6
Luxian is on a distinguished road
Trimite un mesaj prin Yahoo pentru Luxian
Implicit

sper sa fii inteles corect ceea ce iti trebuie tie:

Cod:
SELECT * FROM `tabel` GROUP BY `user` ORDER BY `nume` ASC
__________________
www.luxian.ro | "Prieten e cel care te învață să pescuiești, nu cel care îți dă pește!"
Oo==oO | w210 owner
Luxian is offline   Reply With Quote
Vechi 12.03.2007   #3
websku
32-Bit Member
 
websku's Avatar
 
Data înregistrării: 18.06.2005
Locație: Ramnicu Valcea
Mesaje: 120
Rep Power: 0
websku is on a distinguished road
Trimite un mesaj prin Yahoo pentru websku
Implicit

nu ai inteles...

sa zicem ca am tabelul:

ID Nume User
----------------
1 unu alex
2 doi alex
3 nume alex
4 alt_nume alex
5 orice_nume alex
6 alege_nume alex


As vrea sa imi intoarca neaparat liniile in urmatoarea ordine: 1,2,6,4,3,5 pe considerentul ca primele 2 (2 nu e variabila, e numar fix) sunt returnate dupa ID crescator iar ultimele (adica restul, oricate ar fi) sa fie intoarse dupa NUME tot crescator...


Cred ca m-am facut inteles
websku is offline   Reply With Quote
Vechi 12.03.2007   #4
shogun
256-Bit Member
 
shogun's Avatar
 
Data înregistrării: 03.07.2005
Locație: Timisoara
Mesaje: 1.011
Rep Power: 8
shogun is on a distinguished road
Implicit

Am stat 10 minute sa inteleg ce vrei si ....degeaba.
Poate daca dai un exemplu cu date fictive ca sa intelegem ...
Exemplul dat de tine nu-mi spune nimic.
__________________
Cel ce crede ca le stie pe toate mai are inca multe de invatat.
shogun is offline   Reply With Quote
Vechi 13.03.2007   #5
Luxian
Spamofob
 
Luxian's Avatar
 
Data înregistrării: 26.06.2006
Locație: Timișoara
Vârsta: 25
Mesaje: 398
Rep Power: 6
Luxian is on a distinguished road
Trimite un mesaj prin Yahoo pentru Luxian
Implicit

Ceea ce cred ca vrei tu sa faci nu e posibil (si inca nu sunt sigur ca am inteles ce vrei). Gandeste-te ca poate exista o alta varianta. Spune-ne ce vrei sa faci si poate gasim o alta metoda mai buna si mai simpla.
__________________
www.luxian.ro | "Prieten e cel care te învață să pescuiești, nu cel care îți dă pește!"
Oo==oO | w210 owner
Luxian is offline   Reply With Quote
Vechi 13.03.2007   #6
nchipn
32-Bit Member
 
nchipn's Avatar
 
Data înregistrării: 20.11.2006
Locație: oradea
Mesaje: 195
Rep Power: 6
nchipn is on a distinguished road
Implicit

Probabil vrea ca rezultatul interogarii sa fie compus astfel
- primele doua randuri din rezultat sa fie ordonate crescator dupa 'ID';
- restul liniilor sa fie ordonate dupa "Nume";
Din cate stiu nu cred ca se poate cu un singur query
nchipn is offline   Reply With Quote
Vechi 16.03.2007   #7
websku
32-Bit Member
 
websku's Avatar
 
Data înregistrării: 18.06.2005
Locație: Ramnicu Valcea
Mesaje: 120
Rep Power: 0
websku is on a distinguished road
Trimite un mesaj prin Yahoo pentru websku
Implicit

Citat:
Probabil vrea ca rezultatul interogarii sa fie compus astfel
- primele doua randuri din rezultat sa fie ordonate crescator dupa 'ID';
- restul liniilor sa fie ordonate dupa "Nume";
Din cate stiu nu cred ca se poate cu un singur query
era si greu de inteles. ma bucur ca te-ai prins

Atunci stie cineva cum se pot uni 2 sau mai multe query?
websku is offline   Reply With Quote
Vechi 16.03.2007   #8
nchipn
32-Bit Member
 
nchipn's Avatar
 
Data înregistrării: 20.11.2006
Locație: oradea
Mesaje: 195
Rep Power: 6
nchipn is on a distinguished road
Smile

Cod PHP:
$res=mysql_query("SELECT * FROM `tabel` ORDER BY `ID` ASC");
$row1=mysql_fetch_array($res);
$row2=mysql_fetch_array($res;//obtii primele 2 linii dupa ID
$res2=mysql_query("SELECT * FROM `tabel` ORDER BY `NUME` ASC");
while(
mysql_fetch_array($res2))
{
if (
row.["ID"]=row1.["ID"] || row.["ID"]=row2.["ID"] )
{
// nu face nimik;sunt liniile care sunt rezultatul primei interogari 
}
else
{
//cod
}

PS: Corecteaza sintaxa, si ce mai e gresit(am cam uitat cum se face)
nchipn is offline   Reply With Quote
Răspunde


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Moduri de afișare

Reguli de postare
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Pornit
emoticoanele sunt Pornit
Codul [IMG] este Pornit
Codul HTML este Pornit



Ora este GMT +3. Ora este acum 02:10:48.


Rulează cu: vBulletin Version 3.8.4
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Forum SEO by Zoints

XXXXXXXXXXXXXXXXXXX
Inactive Reminders By Icora Web Design