Hejsan.
Håller just på att migrera min blogg från access till mySql och sprang på detta problem:
[MySQL][ODBC 3.51 Driver][mysqld-5.0.45-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 '+t1.cat+'%' OR t2.cat LIKE ''+t1.cat+'%' OR t2.cat LIKE '%'+t1.cat+'' AND site=' at line 1
på frågan nedan:
select t1.cat,(select count(t2.cat) from tblDagbok as t2 where t2.cat LIKE '%'+t1.cat+'%' OR t2.cat LIKE ''+t1.cat+'%' OR t2.cat LIKE '%'+t1.cat+'' AND site='"&thisSite&"') from tblCat as t1 where site='"&thisSite&"' Group by cat
Eftersom jag inte kan mySql alls så vore det grejt om nån kunde peka mig i rätt riktning
Skulle säga att du inte kan använda + för konkatenering. Använd concat istället, dvs
select t1.cat, (
select count(t2.cat) from tblDagbok as t2 where
t2.cat LIKE CONCAT('%', t1.cat, '%'),
OR t2.cat LIKE CONCAT(t1.cat, '%'),
OR t2.cat LIKE CONCAT('%', t1.cat)
AND site='"&thisSite&"')
from tblCat as t1
where site='"&thisSite&"' Group by cat
Sen vill jag också hälsa att du inte behöver ha med de två OR-villkoren, eftersom exempelvis LIKE "%bc%" matchar såväl "abcd" som "abc" och "bcd". Sen ser frågan inte helt superoptimal ut ur prestandasynpunkt (för att uttrycka sig milt) men det kanske är medvetet?
Tusen tack, testade Concat tidigare men det funkade inte, eller det funkade men jag hadde ytterligare fel i koden och nu när dom var fixade så funkar det
256 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a