Jag försöker skapa en lite större sql fråga men får inte koden att funka. Du får nog ge lite bättre beskrivning. "får inte koden att funka" är lite vagt... Eller vänta här nu. Det ser inte alls rätt ut... Du gör ju mängder med cross joins... Funkar det så känns det jävligt skumt.SQL Problem
<code>SELECT
SUM(TotalBans.rows1) AS total_bans,
COUNT(TotalPermanent) AS permanent_bans,
COUNT(TotalTemporary) AS temporary_bans,
COUNT(amx_banhistory) AS expired_bans,
COUNT(TotalAdmins) AS admins,
TotalNextExpires.rows6 AS next_expires
FROM
(SELECT COUNT(*) AS rows1 FROM amx_bans UNION ALL SELECT COUNT(*) AS rows1 FROM amx_banhistory) AS TotalBans,
(SELECT * FROM amx_bans WHERE ban_length = 0) AS TotalPermanent,
(SELECT * FROM amx_bans WHERE ban_length > 0) AS TotalTemporary,
(SELECT * FROM amx_amxadmins WHERE flags != ´b´) AS TotalAdmins,
(SELECT (ban_created + (ban_length * 60)) AS rows6 FROM amx_bans WHERE ban_length > 0) AS TotalNextExpires ORDER BY next_expires ASC LIMIT 1</code>Sv:SQL Problem
Det uppenbara felet är att du använder aggregatfunktioner utan group by på icke-aggregerade fält (TotalNextExpires.rows6). Sen kan det ju naturligtvis finnas fler fel.
Ett tips är att börja med en mindre och bygga ihop den i steg.Sv:SQL Problem
Börja med ett värde, t.ex. "TotalPermanent", så att du får ut det rätt först.
SELECT
COUNT(*) AS permanent_bans,
FROM
amx_bans WHERE ban_length = 0