sql >> Databasteknik >  >> RDS >> Mysql

MySQL JOIN med LIMIT 1 på sammanfogat bord

Jag gillar mer ett annat tillvägagångssätt som beskrivs i en liknande fråga:https://stackoverflow.com/a/11885521/ 2215679

Detta tillvägagångssätt är bättre speciellt om du behöver visa mer än ett fält i SELECT. För att undvika Error Code: 1241. Operand should contain 1 column(s) eller dubbelt underval för varje kolumn.

För din situation bör frågan se ut så här:

SELECT
 c.id,
 c.title,
 p.id AS product_id,
 p.title AS product_title
FROM categories AS c
JOIN products AS p ON
 p.id = (                                 --- the PRIMARY KEY
  SELECT p1.id FROM products AS p1
  WHERE c.id=p1.category_id
  ORDER BY p1.id LIMIT 1
 )


  1. Så här grupperar du en rapport efter flera fält i Access 2016

  2. "O" i ORDBMS:PostgreSQL Inheritance

  3. SQL VÄLJ SUMMA

  4. Kan inte ansluta till localhost, men kan med datornamn i SQL Server 2008