webForumDet fria alternativet

MySQL-begränsning i query?

1 svar · 203 visningar · startad av sabbacus

sabbacusMedlem sedan juli 2002630 inlägg
#1

Jag lägger in denna i min SQL-sats
( tabell_1 + tabell_2 + tabell_3 ) AS total_sum,
och får då kolumnen "total_sum".
Denna kolumn kan jag sortera efter i min ORDER BY. Men varför kan jag inte använda den i min WHERE-sats?

			SELECT 			
				spp_mod_internpoang.tabell_1, 
				spp_mod_internpoang.tabell_2,
				spp_mod_internpoang.tabell_3, 
				( spp_mod_internpoang.tabell_1 + spp_mod_internpoang.tabell_2 + spp_mod_internpoang.tabell_3 ) AS total_sum,
				spp_users.username, 
				spp_users.first_name, 
				spp_users.last_name, 
				spp_users.id 
				
			FROM
				spp_mod_internpoang, 
				spp_users 
			WHERE 
				spp_mod_internpoang.user_id = spp_users.id 
			AND 
				total_sum > '0'
			ORDER BY 
				total_sum DESC

Queryn fungerar felfritt om man tar bort "AND total_sum > '0'"

Om man kör queryn som den ser ut nu får man felmeddelandet "Unknown column 'total_sum' in 'where clause'"

MySQL-server: 4.0.14

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Du får skriva ut uttrycket explicit i where

Det är (faktiskt) ingen begränsning i Mysql.

Flyttas från Mysql

124 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
121 ms — hämta tråd, inlägg och bilagor (db)