sql >> Databáze >  >> RDS >> Mysql

Duplicitní název sloupce na JOIN v mysql

Ve vnitřním dotazu je třeba zadat aliasovaný sloupec

SELECT COUNT( * )
FROM (

  SELECT t.*
  FROM `user` `t`
  JOIN `user_relation` r ON ( t.user_id = r.follower_id
  OR t.user_id = r.user_id )
  WHERE r.status = "active"
  AND (
    r.user_id =125
    OR r.follower_id =125
  )
  AND t.user_id !=125
  GROUP BY t.username
)sq

Protože vás zajímá count(*) pouze vy můžete vrátit buď t.* nebo r.* nebo libovolný jeden sloupec, podmínkou je, že názvy sloupců ve vnitřním dotazu MUSÍ být jedinečné nebo pokud jsou stejné v obou tabulkách než s předponou název aliasu tabulky.



  1. Jak získat aktuální datum a čas (bez časového pásma) v T-SQL

  2. java.lang.OutofMemorySpace:Java haldový prostor při načítání 120 milionů řádků z databáze v pysparku

  3. Je možné vytvořit typy objektů databáze Oracle uvnitř PL/SQL?

  4. Jak mohu spočítat počet příspěvků?