sql >> Database >  >> RDS >> Mysql

Veel-op-veel relatie selecteren en bestellen op

Waarschijnlijk zoiets als dit:

SELECT
    a.person_id
FROM
    table AS a,
    table AS b
WHERE
    a.person_id = b.person_id AND
    a.favorite_id = 1 AND
    b.favorite_id = 2
ORDER BY
    ( IF( a.is_main_favorite = "y", 1, 0 )
      +
      IF( b.is_main_favorite = "y", 1, 0 ) ) DESC

Trouwens:misschien wilt u 1/0 in plaats van y/n in de database opslaan, zodat u de IF-aanroep niet nodig heeft



  1. Django aangepaste unieke samen beperking

  2. Pivot zonder aggregatiefunctie in MSSQL 2008 R2

  3. Hoe json-array filteren op elke geretourneerde rij?

  4. Geef array door van Java naar Oracle:java.sql.SQLException:kan niet worden geconverteerd naar interne representatie:fout