Søgeordet INNER JOIN returnerer rækker, når der er mindst ét match i begge tabeller.
MySQL INNER JOIN-klausul
MySQL INNER JOIN-klausulen matcher rækker i én tabel med rækker i andre tabeller og giver dig mulighed for at forespørge rækker, der indeholder kolonner fra begge tabeller.
MySQL INNER JOIN-sætningen er en valgfri del af SELECT-sætningen. Den vises umiddelbart efter FROM-sætningen.
Før du bruger MySQL INNER JOIN-klausulen, skal du angive følgende kriterier:
Først skal du angive hovedtabellen, der vises i FROM-klausulen. For det andet skal du angive de tabeller, som du vil forbinde med hovedtabellen, som vises i INNER JOIN-klausulen. Teoretisk set kan du slutte dig til et bord med mange borde. For en bedre forespørgselsydeevne bør du dog begrænse antallet af tabeller, der skal tilsluttes. For det tredje skal du angive join-betingelsen eller join-prædikatet. Sammenføjningsbetingelsen vises efter nøgleordet ON i INNER JOIN-klausulen. Sammenkædningsbetingelsen er reglen for at matche rækker mellem hovedtabellen og de andre tabeller.
Eksempel
SELECT c.cid, c.course_desc, user.name FROM AM_COURSE c
INNER JOIN AM_INTER inter on inter.cid = c.cid
INNER JOIN AM_USER user on user.uid = inter.uid
INNER JOIN AM_TIMETABLE tt ON inter.cid = tt.UserId
WHERE c.Name = 'coursename' AND tt.Date_Time BETWEEN '2011-08-12' AND '2012-08-12'