webForumDet fria alternativet

Behöver verkligen hjälp med en optimisering...

Databaser & SQL

7 svar · 261 visningar · startad av nkrantz

Medlem sedan apr. 2002830 inlägg
Frågan#1

Hej, följande SQL uttryck

SELECT 
	m.member_id,
	m.nick,
	mo.member_occupation_id
FROM 
	tbl_member AS m, 
	tbl_member_occupation AS mo, 
	tbl_member_area AS ma, 
	tbl_member_branch AS mb, 
	tbl_freetext AS f 
WHERE 
		ma.area_id > 0 
	AND 
		ma.member_occupation_id = mo.member_occupation_id 
	AND 
		mo.member_id = m.member_id 
	AND 
		mo.active = 1 
	AND 
		m.status = 1 
GROUP BY 
	mo.member_occupation_id 
ORDER BY 
	RAND()

Ger ca 5.000.000 rader i en databas med 73 medlemmar.

För att förklara strukturen så är det följande relationer:

tbl_member 1 - n tbl_member_occupation
tbl_member_occupation 1 - n tbl_member_area
tbl_member_occupation 1 - n tbl_member_branch
tbl_member_occupation 1 - n tbl_freetext

Någon som kan hjälpa mig, eller behövs mer information?

// Nippe

Medlem sedan dec. 200012 464 inlägg
#2

Du ställer inga villkor på tabellen freetext.

Flyttas från Mysql

Medlem sedan apr. 2002830 inlägg
#3

Du är UNDERBAR! Tackar!

Medlem sedan apr. 2002830 inlägg
#4

Förresten, skulle det gå att ha exemplevis ett "void" uttryck i WHERE satsen? Alltså typ "WHERE f.freetext_id = SKIT I DEN HÄR TABELLEN"?

Nyfiken...

Medlem sedan dec. 200012 464 inlägg
#5

Varför har du med den i from listan över huvud taget?

Medlem sedan apr. 2002830 inlägg
#6

Det är så att sql'en sätts ihop av en massa villkor i tidigare kod. Möjligheten finns att skriva in och söka på freetext, men om man inte skriver något så kommer inte det villkoret med.

MAO, sql'en kommer från en kombinerad sökning där man kan välja och vraka. Beroende på vad som väljs, och då inte väljs så ändras det i WHERE satsen. Och numera då, även i FROM satsen... (Det var den lilla detaljen jag missade...)

// Nippe

Medlem sedan dec. 200012 464 inlägg
#7

Nej, du år se till att få bort den från from-listan när den inte används.

Medlem sedan apr. 2002830 inlägg
#8

oki... :)

260 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)