sql >> Database teknologi >  >> RDS >> Mysql

hvordan får man detaljer fra flere borde?

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'


  1. Hvad er en beregnet kolonne i SQL Server?

  2. Hvad er den bedste praksis for at begrænse bestemte sider til kun loggede brugere i Codeigniter?

  3. MySQL Query Performance Tuning

  4. Sådan vælger du poster fra de sidste 24 timer i PostgreSQL