Jump to content
php.lv forumi

Recommended Posts

Posted (edited)

Lieta tāda, ka tiek veidota komandas profila lapa, kur arī ir pēdējās spēles.

Attiecīgi no tabulas 'rezultati' tiek savāktas dati par tām komandas_id, kas sakrīt ar komandas id ($_GET['id'])

$pedeejaas_speeles = mysql_query("SELECT km1, km1_rez, km2, km2_rez FROM rezultati WHERE km1 = '$komanda[0]' OR km2 = '$komanda[0]' ORDER BY id DESC LIMIT 5");

 

$komanda['0'] ir komandas_id

km1 // komandas1 id

km2 // komandas2 id

 

Izvelku es šādi:

<tr><td>".$komandas_tags1['1']." vs. ".$komandas_tags2['1']."</td></tr>

 

$komandas_tags ir ņemts no komandām, lai no id iegūtu nosaukumu...

iznākumā viss strādā, bet ir sajaukts, piem.

izvēlētās komandas nosaukums ir PHP, tad izvelkot ir

PHP vs. HTML

CSS vs. XHTML

PHP vs. JAVA

PHP vs. AJAX

AJAX vs. PHP

 

Gribu izveidot, lai šī komanda vienmēr ir sākumā:

 

PHP vs. HTML

PHP vs. CSS

PHP vs. AJAX

...

 

Kā to varētu panākt?

Edited by anonīms
Posted

Tu neesi pareizi sapratis, ORDER BY man vajag id, bet no db gribu, lai vienmēr izvēlēlētā id vienmēr būtu pirmā nevis otrā

 

'km1_kollona' vs. 'km2_kollona'

ir pašlaik, bet vēlos, lai vienmēr izvēlētā id būtu pirmā, lai būtu

 

'km1_kollona' vs. 'km2_kollona'

'km2_kollona' vs. 'km1_kollona'

'km1_kollona' vs. 'km2_kollona'

'km2_kollona' vs. 'km1_kollona'

'km1_kollona' vs. 'km2_kollona'

Posted

Ieliec savu kveriju kā izejas avotu kverijam kurš sakārto otreiz.

SELECT * FROM (SELECT km1, km1_rez, km2, km2_rez FROM rezultati WHERE km1 = '$komanda[0]' OR km2 = '$komanda[0]' ORDER BY id DESC LIMIT 5 ) as t ORDER BY km1

Posted

Nez ar ko codez tavs ir labāks par prastu ORDER BY id, km1 ?

 

Tu neesi pareizi sapratis, ORDER BY man vajag id, bet no db gribu, lai vienmēr izvēlēlētā id vienmēr būtu pirmā nevis otrā

Tādā gadījumā pieliec klāt to papildus kārtošanas kritēriju:

SELECT *, IF(km1==$selected, 0, 1) AS kewl_order FROM blah ORDER BY kewl_order, id

Posted (edited)

Nezinu vai labāks, bet savādāks noteikti. Protams varbūt tas nav tas, ko vajag topika autoram, bet sapratu tā.

Ja būs dati:

a b

1 S

2 B

3 F

4 A

5 G

6 C

 

Tad kverijs:

SELECT * FROM t1 ORDER BY a,b LIMIT 5  ;

1, 'S'

2, 'B'

3, 'F'

4, 'A'

5, 'G'

 

vai

SELECT * FROM t1 ORDER BY b,a LIMIT 5  ;

4, 'A'

2, 'B'

6, 'C'

3, 'F'

5, 'G'

 

 

Bet vajadzīgi ta pirmie 5 id, taču pēctam sakārtoti pēc alfabēta.

SELECT * FROM (SELECT * FROM t1 ORDER BY a LIMIT 5  ) as t ORDER BY b;

4, 'A'

2, 'B'

3, 'F'

5, 'G'

1, 'S'

Edited by codez
Posted

lietu atrisināju tā, ka pārbaudu vai km1 sakrīt ar ņemto get_id

un tad ar ifiem sakārtoju

if($blabla['0'] == '$_GET[id]')

{

km1 vs km2

}

else

km2 vs km1

Posted

SELECT IF(km1 = 'komanda1', km1, km2) as km1, IF(km1 = 'komanda1', km2, km1) as km2

FROM rez

WHERE km1 = 'komanda1' OR km2 = 'komanda1';

×
×
  • Create New...