webForumDet fria alternativet

Problem med SQL-script

9 svar · 368 visningar · startad av grillkillen

grillkillenMedlem sedan sep. 200350 inlägg
#1

Jag har bytt databas från MSSQL till MySQL och har nu problem med en SQL-fråga i ASP. Vet någon problemet? Det fungerade fint i MSSQL.


select *, (select count(*) from tblTest_dev as SubMeny where SubMeny.UnderMenuId = tblTest_dev.Id and tblTest_dev.Publishing = 1) as SubMenus from tblTest_dev where tblTest_dev.UnderMenuId = "& menuItem &" and tblTest_dev.LanguageId = "& languageId &" and tblTest_dev.Publishing = 1 order by MenuOrder
OveRRidEMedlem sedan feb. 200112 078 inlägg
#2

Flyttas från ASP.

@ndersMedlem sedan juni 200032 969 inlägg
#3

Definiera "problem". Felmeddelande? Vilken version av MySQL använder du?

Radbryt gärna din långa SQL-fråga så den går att läsa.

grillkillenMedlem sedan sep. 200350 inlägg
#4

SQL-frågan lyder:

select *, (select count(*) from tblTest_dev as SubMeny where 
SubMeny.UnderMenuId = tblTest_dev.Id and tblTest_dev.Publishing = 1) as 
SubMenus from tblTest_dev where tblTest_dev.UnderMenuId = "& menuItem 
&" and tblTest_dev.LanguageId = "& languageId &"
 and tblTest_dev.Publishing = 1 order by MenuOrder

Felmeddelandet lyder:

[MySQL][ODBC 3.51 Driver][mysqld-4.0.18-log]You have an error in your SQL
 syntax. Check the manual that corresponds to your MySQL server version for
 the right syntax to use near 'select count(*) from tblTest_dev as SubMeny
 where SubMeny.Und...
@ndersMedlem sedan juni 200032 969 inlägg
#5

Subqueries stöds från och med version 4.1 av MySQL. Så; antingen får du uppgradera, eller skriva om frågan som en JOIN.

grillkillenMedlem sedan sep. 200350 inlägg
#6

Ok, sådär. Vill du ge ett förslag på hur jag kan skriva om frågan med join..?

@ndersMedlem sedan juni 200032 969 inlägg
#7

Det där kan helt klart bli klurigt att få till när jag tänker efter.

Har du ingen möjlighet att uppgradera, eller det kanske inte är din egen server?

grillkillenMedlem sedan sep. 200350 inlägg
#8

Nej, det är inte min server. Det jobbiga är att det borde vara fixat nu ikväll. Jag har fått ansvaret eftersom jag ansågs kunna det... vilket inte gick så bra. :) Så om du vill hjälpa till ska jag se till att du belönas därefter.

LarsGMedlem sedan dec. 200012 464 inlägg
#9
select <kolumner>, 
 count(underMenuId) as submenus
from tblTest_dev as menu
 left join tblTest_dev as SubMeny on menu.id = submenu.UnderMenuId
where menu.Publishing = 1
and menu.UnderMenuId = "& menuItem & "
and menu.LanguageId = "& languageId & "
group by <kolumner>
order by menu.MenuOrder
@ndersMedlem sedan juni 200032 969 inlägg
#10

När snabelns hjärna sover klampar den store björnen in och pekar ut det blå skåpet.

Finfin lösning, tycker jag det ser ut att vara!

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