foute query?
CREATE TABLE `tblsites` (
`pkSiteID` bigint(21) unsigned NOT NULL auto_increment,
`naamSite` varchar(255) NOT NULL default '',
`taal` varchar(50) default NULL,
`url` varchar(255) default NULL,
`banner_1` varchar(255) default NULL,
`banner_2` varchar(255) default NULL,
`banner_3` varchar(255) default NULL,
`banner_4` varchar(255) default NULL,
`banner_5` varchar(255) default NULL,
`banner_6` varchar(255) default NULL,
`banner_7` varchar(255) default NULL,
`banner_8` varchar(255) default NULL,
`eigen` varchar(255) default NULL,
`aanmeldbonus` decimal(5,2) default NULL,
`uitbetaalgrens` varchar(25) default NULL,
`centpermail` decimal(3,1) default NULL,
`aantalmails` tinyint(3) unsigned default NULL,
`refcredit` varchar(25) default NULL,
`reflevels` tinyint(3) unsigned default NULL,
`bubble` varchar(15) default NULL,
`cijfer` tinyint(3) unsigned default NULL,
`waardering` varchar(10) default NULL,
`ervaring` longtext,
`bank` enum('0','1') default '0',
`paypal` enum('0','1') default '0',
`e_gold` enum('0','1') default '0',
`check` enum('0','1') default '0',
`moneybookers` enum('0','1') default '0',
`ewp` enum('0','1') default '0',
`fgh50` enum('0','1') default '0',
`fgh100` enum('0','1') default '0',
`sms` enum('0','1') default '0',
`prijsvragen` enum('0','1') default '0',
`enquetes` enum('0','1') default '0',
`betaalMails` enum('0','1') default '0',
`quiz` enum('0','1') default '0',
`spellen` enum('0','1') default '0',
`acties` enum('0','1') default '0',
`chat` enum('0','1') default '0',
`webtv` enum('0','1') default '0',
`18plus` enum('0','1') default '0',
`afrader` enum('0','1') default '0',
`scam` enum('0','1') default '0',
`afgekeurd` enum('0','1') default '0',
`forum` enum('0','1') default '0',
`webmaster` enum('0','1') default '0',
`systeem` varchar(10) default NULL,
`opmerkingen` longtext,
PRIMARY KEY (`pkSiteID`)
) TYPE=MyISAM COMMENT='GPT-sites';
CREATE TABLE `tblland` (
`pkNationaliteitID` tinyint(3) unsigned NOT NULL auto_increment,
`kenteken` varchar(5) NOT NULL default '',
`nationaliteit` varchar(255) NOT NULL default '',
`taal` varchar(50) default NULL,
`vlag` longblob,
`notes` longtext,
`landlink` varchar(255) default NULL,
PRIMARY KEY (`pkNationaliteitID`)
) TYPE=MyISAM COMMENT='Landen';
CREATE TABLE `tblaanmeldbonus` (
`pkAanmeldBonusID` tinyint(3) unsigned NOT NULL auto_increment,
`AanmeldBonus` varchar(25) NOT NULL default '',
PRIMARY KEY (`pkAanmeldBonusID`)
) TYPE=MyISAM COMMENT='Aanmeldbonus';
CREATE TABLE `tbluitbetaalgrens` (
`pkUitbetaalGrensID` tinyint(11) unsigned NOT NULL auto_increment,
`UitbetaalGrens` varchar(25) NOT NULL default '',
PRIMARY KEY (`pkUitbetaalGrensID`)
) TYPE=MyISAM COMMENT='Uitbetaalgrens';
CREATE TABLE `tblreflevels` (
`pkRefLevelID` tinyint(3) unsigned NOT NULL auto_increment,
`RefLevels` tinyint(3) unsigned default NULL,
PRIMARY KEY (`pkRefLevelID`)
) TYPE=MyISAM COMMENT='RefLevels';
daarmee wil ik de sites, land, aanmeldbonus, uitbetaalgrens en reflevels in een tabel laten zien.
Ik heb de volgende query:
Code (php)
1
2
3
4
2
3
4
SELECT tblSites.naamSite, tblLand.Taal, tblAanmeldbonus.Aanmeldbonus, tblUitbetaalgrens.Uitbetaalgrens, tblRefLevels.RefLevels
FROM tblRefLevels
INNER JOIN (tblUitbetaalgrens INNER JOIN (tblAanmeldbonus INNER JOIN (tblLand INNER JOIN tblSites ON tblLand.pkNationaliteitID = tblSites.pkNationaliteitID) ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.pkAanmeldbonusID) ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.pkUitbetaalgrensID) ON tblRefLevels.pkRefLevelID = tblSites.pkRefLevelID
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
FROM tblRefLevels
INNER JOIN (tblUitbetaalgrens INNER JOIN (tblAanmeldbonus INNER JOIN (tblLand INNER JOIN tblSites ON tblLand.pkNationaliteitID = tblSites.pkNationaliteitID) ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.pkAanmeldbonusID) ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.pkUitbetaalgrensID) ON tblRefLevels.pkRefLevelID = tblSites.pkRefLevelID
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
maar ik krijg de melding:
"Something is wrong in your syntax bij '(tbluitbetaalgrens INNER JOIN (tblaanmeldbonus INNER JOIN (tblla' in regel 1"
Blijkbaar mag dat haakje openen niet na INNER JOIN.
Code (php)
1
2
3
4
2
3
4
SELECT tblSites.naamSite, tblLand.Taal, tblAanmeldbonus.Aanmeldbonus, tblUitbetaalgrens.Uitbetaalgrens, tblRefLevels.RefLevels
FROM tblRefLevels
INNER JOIN tblUitbetaalgrens INNER JOIN tblAanmeldbonus INNER JOIN tblLand INNER JOIN tblSites ON tblLand.pkNationaliteitID = tblSites.pkNationaliteitID ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.pkAanmeldbonusID ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.pkUitbetaalgrensID ON tblRefLevels.pkRefLevelID = tblSites.pkRefLevelID
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
FROM tblRefLevels
INNER JOIN tblUitbetaalgrens INNER JOIN tblAanmeldbonus INNER JOIN tblLand INNER JOIN tblSites ON tblLand.pkNationaliteitID = tblSites.pkNationaliteitID ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.pkAanmeldbonusID ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.pkUitbetaalgrensID ON tblRefLevels.pkRefLevelID = tblSites.pkRefLevelID
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
dan krijg ik dezelfde melding.
Gewijzigd op 01/01/1970 01:00:00 door John de Boer
inner join tabel on iets.id=ietsanders.id,
inner join tabel on nogiets.id=nogietsanders.id
Lijkt mij tenminste
SELECT t1.name, t2.salary
FROM employee t1 INNER JOIN info t2 ON t1.name = t2.name;
volgens deze site
Ow ja schrijf je querie ook eens uit op deze maniet
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
SELECT
a.jouwding
FROM
jouwtabel a
INNER JOIN
jouwtabel b
ON a.id=b.id
WHERE
a.blaat = 3
ORDER BY a.id
a.jouwding
FROM
jouwtabel a
INNER JOIN
jouwtabel b
ON a.id=b.id
WHERE
a.blaat = 3
ORDER BY a.id
dan blijft het leesbaar tussen de code tags
Gewijzigd op 01/01/1970 01:00:00 door Klaasjan Boven
de goeie query moest zijn:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
SELECT tblSites.naamSite, tblLand.Taal, tblAanmeldbonus.Aanmeldbonus, tblUitbetaalgrens.Uitbetaalgrens, tblRefLevels.RefLevels
FROM tblRefLevels
INNER JOIN tblUitbetaalgrens ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.Uitbetaalgrens
INNER JOIN tblAanmeldbonus ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.Aanmeldbonus
INNER JOIN tblLand ON tblLand.pkNationaliteitID = tblSites.taal
INNER JOIN tblSites ON tblRefLevels.pkRefLevelID = tblSites.RefLevels
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
FROM tblRefLevels
INNER JOIN tblUitbetaalgrens ON tblUitbetaalgrens.pkUitbetaalgrensID = tblSites.Uitbetaalgrens
INNER JOIN tblAanmeldbonus ON tblAanmeldbonus.pkAanmeldbonusID = tblSites.Aanmeldbonus
INNER JOIN tblLand ON tblLand.pkNationaliteitID = tblSites.taal
INNER JOIN tblSites ON tblRefLevels.pkRefLevelID = tblSites.RefLevels
ORDER BY tblUitbetaalgrens.Uitbetaalgrens, tblAanmeldbonus.Aanmeldbonus DESC;
Ik had de 1e query ook direkt uit Access overgenomen maar moest het dus nog ff naar MySQL 'vertalen'
Gewijzigd op 01/01/1970 01:00:00 door John de Boer
Mooi weer iemand blij :) ( en dat op Sinterklaas(jan))
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
`banner_1` varchar(255) default NULL,
`banner_2` varchar(255) default NULL,
`banner_3` varchar(255) default NULL,
`banner_4` varchar(255) default NULL,
`banner_5` varchar(255) default NULL,
`banner_6` varchar(255) default NULL,
`banner_7` varchar(255) default NULL,
`banner_8` varchar(255) default NULL,
`banner_2` varchar(255) default NULL,
`banner_3` varchar(255) default NULL,
`banner_4` varchar(255) default NULL,
`banner_5` varchar(255) default NULL,
`banner_6` varchar(255) default NULL,
`banner_7` varchar(255) default NULL,
`banner_8` varchar(255) default NULL,
Verder had je beter geen MyIsam kunnen gebruiken, met innoDB kun je namelijk foreignkey's gebruiken en krijg je een veel betere database. Met MyIsam hangen alle tabellen als los zand aan elkaar. 1 verkeerde query en de hele boel stort als een kaartenhuis in elkaar. Met foreignkey's (worden alleen met innoDB ondersteund) kun je dit soort problemen voorkomen.