Ja, lav et inner join sådan at det bliver
SELECT SUM(undecided)
FROM classes INNER JOIN guilds
ON classes.gid = guilds.gid
WHERE guilds.allegiance = 'PvE')
--
Eller:
SELECT sum(undecided)
FROM classes, guilds
WHERE classes.gid = guilds.gid
AND guilds.allegiance 'PvE'
--
Core i7-920 D0 @ 2.66 GHz -|- Gigabyte GA-X58-UD4 -|- Kingston 6x2 DDR3 (1333 MHz) -|- GTX285 1GB DDR3 -|- Windows 7 Ultimate 64bit
#3 Du må ikke hænge mig op på det, men vil den ikke både tælle classes og guilds, og dermed få det dobbelte antal rækker?
--
#4 nej den vil kun tage de rows hvor både "C.gid = G.gid" OG G.allegiance = 'PvE'"
For at lave din skulle du lave to select querys og merge dem.
--
#5 Holder stadig på et inner join er den rigtige løsning, er ret sikker på der er nogle hastighedsforskelle.
--
#6
Ikke på inner joins.
Der er ingen hastigheds forskelle på INNER JOIN og IMPLICIT JOIN.
Det er noget andet med OUTER JOINS.
Funktions mæssigt er der ingen forskel på INNER JOIN og IMPLICIT JOIN.
--
Core i7-920 D0 @ 2.66 GHz -|- Gigabyte GA-X58-UD4 -|- Kingston 6x2 DDR3 (1333 MHz) -|- GTX285 1GB DDR3 -|- Windows 7 Ultimate 64bit