![]() |
|
|
google unix.com
|
|||||||
| Forums | Registrer | Forum Rules | Lenker | Album | FAQ | Medlemsliste | Kalender | Søke | Dagens innlegg | Marker forumene som lest |
| Programvære, Web 2.0 og blandinger Diskuter programvære og Web Server Administration, inkludert LAMP, Apache, MySQL, Flash, HTML, SEO, blandingar og andre Web APIene og emner. |
Mer UNIX og Linux Forum Emner Du kan finne nyttig
|
||||
| Tråd | Tråd startet | Forum | Svar | Siste innlegg |
| Carsten Random Ramblings på MySQL, PHP, programmering og ting | iBot | Solaris BigAdmin RSS | 0 | 02-04-2009 02:30 |
| Mac OS X 10.5: Time Machine ikke tilbake opptil AirPort Extreme AirPort Disker | iBot | OS X Support RSS | 0 | 11-17-2008 12:10 |
| AirPort Quick Assist | iBot | OS X Support RSS | 0 | 11-14-2008 04:50 |
| Mac OS X 10.5.5: Kan ikke slå AirPort på etter at du har slått den av og starte | iBot | OS X Support RSS | 0 | 10-27-2008 11:30 |
| Connecting Solaris til flyplassen nettverk | giax | Sun Solaris | 1 | 07-17-2007 03:05 |
![]() |
|
|
LinkBack | Thread Tools | Søk i denne tråden | Rate Thread | Visningsmoduser |
|
|
|
||||
|
MySQL: Tilfeldige tilbud for alle flyplasser
Jeg trenger å skrive en MySQL spørring hvor den looper igjennom alle flyplasser og genererer 10 tilfeldige tilbud (min tilbyr tabellen er 990.000 + rader) Koden jeg har nedenfor virker for 1 flyplass, men så snart det blir større den bremser ned. Dette er bruk av PHP / MySQL I det øyeblikk det tar godt over et minutt å kjøre noe som er altfor lang - trenger jeg det mye, mye raskere. Kan noen hjelpe? Code:
/**
* This code takes over a minute to run. How do I make it quicker?
*/
// Get airports
$sql0 = 'SELECT airportcode FROM airports ORDER BY airportcode ASC';
$query = $this->db->query($sql0);
// Loop through airports
foreach ($query->result() as $row)
{
// Get a random offer so long as the airport matches
$sql1 = 'SELECT T.id, T.DepAirportCode
FROM offers T
JOIN (
SELECT FLOOR( MAX( id ) * RAND( ) ) AS id
FROM offers
) AS x ON T.id >= x.id
WHERE
T.DepAirportCode="'.$row->airportcode.'"
LIMIT
10';
// Loop through random offers
$query1 = $this->db->query($sql1);
foreach ($query1->result() as $row)
{
print $row->id;
print $row->DepAirportCode;
} // next
} // next
|
|
||||
|
Du må kombinere de to forespørsler til 1 spørring og slik at minst WHERE-leddet ser ut som følger:
WHERE T. DepAirportCode \u003d airports.airportcode Har en lest av denne for å velge en tilfeldig rad: SQL for å velge en tilfeldig rad fra en database tabell |
![]() |
| Hugseliste |
| Thread Tools | Søk i denne tråden |
| Visningsmoduser | Ranger denne tråden |
|
|