heyho, ich habe folgende datenbank mit ca. 19k einträgen.
Code
+-----+------------------+------------------+-------+--------+-------+
| id | uid | fid | posts | linked | value |
+-----+------------------+------------------+-------+--------+-------+
| 1 | a93c0e3fb4105dd3 | 859adf2bdf4064f0 | 1 | 0 | 0 |
| 2 | a93c0e3fb4105dd3 | 3229faa85b3b958d | 0 | 0 | 0 |
| 3 | a93c0e3fb4105dd3 | 6acb2a3288750b0b | 0 | 0 | 0 |
| 4 | a93c0e3fb4105dd3 | d3146a7e07afa9ce | 1 | 0 | 0 |
| 5 | a93c0e3fb4105dd3 | 659363a2274f1523 | 1 | 0 | 0 |
| 6 | a93c0e3fb4105dd3 | 17afcd78ef02850f | 0 | 0 | 0 |
| 7 | a93c0e3fb4105dd3 | 195ffbd3badb2df0 | 1 | 0 | 0 |
| 8 | a93c0e3fb4105dd3 | 121c029287b43782 | 0 | 0 | 0 |
| 9 | a93c0e3fb4105dd3 | 672238295fe947fa | 0 | 0 | 0 |
| 10 | a93c0e3fb4105dd3 | 8de35df72d3f438c | 13 | 0 | 0 |
| 11 | a93c0e3fb4105dd3 | 0143cfd9e46c2050 | 1 | 0 | 0 |
| 12 | 79d1f123d480d3f2 | 1d2fa72e5d6bf027 | 0 | 0 | 0 |
| 13 | 79d1f123d480d3f2 | 0036d76cba3e3f49 | 0 | 0 | 0 |
| 14 | 79d1f123d480d3f2 | a4bfa648428f646d | 0 | 0 | 0 |
| 15 | 79d1f123d480d3f2 | 1a608efc36e97fc9 | 1 | 0 | 0 |
| 16 | 79d1f123d480d3f2 | 3a475ce4f2e7f964 | 0 | 0 | 0 |
| 17 | a93c0e3fb4105dd3 | d1e48572db3af02b | 0 | 0 | 0 |
| 18 | a93c0e3fb4105dd3 | 743a6f834b27fdf2 | 0 | 0 | 0 |
| 19 | a93c0e3fb4105dd3 | db736b5e3fe61228 | 0 | 0 | 0 |
| 20 | a93c0e3fb4105dd3 | 79839fcc1572a3da | 2 | 0 | 0 |
| 21 | a93c0e3fb4105dd3 | ed13b0f0595ba73e | 1 | 0 | 0 |
| 22 | a93c0e3fb4105dd3 | 062b0d8ac89c08b9 | 2 | 0 | 0 |
| 23 | a93c0e3fb4105dd3 | a68a2a3ca1f68e43 | 0 | 0 | 0 |
| 24 | a93c0e3fb4105dd3 | 8434e15eb2a60152 | 0 | 0 | 0 |
| 25 | a93c0e3fb4105dd3 | dc40bffe4c276d7c | 3 | 0 | 0 |
| 26 | a93c0e3fb4105dd3 | 7fc4c496895550ba | 1 | 0 | 0 |
| 27 | a93c0e3fb4105dd3 | ac1c5d266a78ddb8 | 0 | 0 | 0 |
| 28 | a93c0e3fb4105dd3 | 215872aec90d8472 | 0 | 0 | 0 |
| 29 | a93c0e3fb4105dd3 | d2478675e50fc52c | 5 | 0 | 0 |
Alles anzeigen
ich möchte jetzt von der uid die zugehörige gesammtpostinganzahl haben, und die pro uid ausgegeben haben.
mein query den ich mir dafür passenderweise überlegt hab, umfasst allerdings ein subquery, weswegen ich damit bei 19k den datenbankserver sprenge.
der query sieht bis dato so aus:
SQL
SELECT
r.uid,
(SELECT sum(posts)
FROM relation
WHERE uid=r.uid) AS posts
FROM relation AS r
GROUP BY uid
ORDER BY posts DESC;
wie optimiert man sowas?