sql >> Databasteknik >  >> RDS >> Mysql

hur får man information från flera bord?

Nyckelordet INNER JOIN returnerar rader när det finns minst en matchning i båda tabellerna.

MySQL INNER JOIN-klausul

MySQL INNER JOIN-satsen matchar rader i en tabell med rader i andra tabeller och låter dig fråga rader som innehåller kolumner från båda tabellerna.

MySQL INNER JOIN-satsen är en valfri del av SELECT-satsen. Den visas omedelbart efter FROM-satsen.

Innan du använder MySQL INNER JOIN-klausulen måste du ange följande kriterier:

Först måste du ange huvudtabellen som visas i FROM-satsen. För det andra måste du ange de tabeller som du vill koppla ihop med huvudtabellen, som visas i INNER JOIN-satsen. Teoretiskt kan du slå samman ett bord med många bord. Men för bättre frågeprestanda bör du begränsa antalet tabeller som ska gå med. För det tredje måste du ange kopplingsvillkoret eller kopplingspredikatet. Anslutningsvillkoret visas efter nyckelordet ON i INNER JOIN-satsen. Sammanfogningsvillkoret är regeln för matchning av rader mellan huvudtabellen och de andra tabellerna.

Exempel

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. Hur man importerar en MySQL-dump från kommandoraden MED överskrivning

  2. 5 sätt att lista tillfälliga tabeller med T-SQL

  3. Göra ändringar i flera poster baserat på ändring av en enda post med SQL

  4. Välj de 20 senaste beställningarna genom att stiga - PHP/MySQL