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

Forespørgsel giver dobbelt resultat?

Tre måder at løse dette på (grundlæggende har du mere end 1 række i nwork):

SELECT distinct b.id,b.body FROM btin b
INNER JOIN nwork n ON (n.mem_id = b.mem_id)  
WHERE b.parentid = '0'
AND ('401' IN (n.frd_id, b.mem_id))
ORDER BY b.date DESC 
LIMIT 20 OFFSET 0


SELECT  b.id,b.body 
FROM btin b
Where b.id in (SELECT  b.id FROM btin b  INNER JOIN nwork n ON (n.mem_id = b.mem_id)  
                WHERE b.parentid = '0' AND ('401' IN (n.frd_id, b.mem_id)))
ORDER BY b.date DESC 
LIMIT 20 OFFSET 0

SELECT  b.id,b.body FROM btin b
INNER JOIN nwork n ON (n.mem_id = b.mem_id)  
WHERE b.parentid = '0'
AND ('401' IN (n.frd_id, b.mem_id))
Group by b.id, b.body, b.date
ORDER BY b.date DESC 
LIMIT 20 OFFSET 0


  1. php-syntaksfejl, uventet T_VARIABLE, forventer ',' eller '' på linje 29

  2. Kan ikke finde mysql.sock

  3. Sådan tælles data i Java MySQL

  4. MySQL – MariaDB – Skrivning af den allerførste lagrede procedure