|
| Optælling af database i en enkel forspørgs~ Fra : Kasper Johansen |
Dato : 04-11-05 16:28 |
|
Hej gruppe.
Jeg skal, udfra en masse optælinger, generere noget indhold.
Jeg bruger PHP/MySQL 4.1.
Problemet er at jeg sender omkring 20 forskellige optællingsforspørgsler.
Er det muligt (på en enkel måde), at optælle mine forskellige tabeller i en
forspørgsel? Jeg tænker noget lignende denne forspørgsel:
SELECT
COUNT(tabel1.id),
COUNT(tabel2.id)
FROM
tabel1,
tabel2
WHERE
tabel1.brugerid = 'mitbrugerid' &&
tabel2.lalaid = 'etid'
Lige nu giver den mig nemlig alle kombinationsmuligheder af de to tabeller,
hvilket er helt hen i vejret.
--
Med venlig hilsen
Kasper Johansen
| |
Peter Brodersen (04-11-2005)
| Kommentar Fra : Peter Brodersen |
Dato : 04-11-05 17:02 |
|
On Fri, 4 Nov 2005 16:28:19 +0100, "Kasper Johansen"
<kasper@johansen.tdcadsl.dk> wrote:
>Problemet er at jeg sender omkring 20 forskellige optællingsforspørgsler.
Det behøver vel ikke at være et problem?
Hvis der er høj latency mellem din applikation og din database, kan du
eventuelt sende én forespørgsel ved at UNION ALL'e resultaterne, fx:
SELECT COUNT(id) AS count_id FROM tabel1 WHERE brugerid='mitbrugerid'
UNION ALL
SELECT COUNT(id) AS count_id FROM tabel2 WHERE lalaid='etid'
UNION ALL
SELECT ..
Jeg synes dog ikke, det er synderligt pænt.
>Lige nu giver den mig nemlig alle kombinationsmuligheder af de to tabeller,
>hvilket er helt hen i vejret.
Det er det forventede resultat, når du laver opslag i flere tabeller.
--
- Peter Brodersen
| |
|
|