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

Pomocí id, které jsou sql oddělené čárkami

Můžete jej použít v jiném dotazu, jako je takto:

SELECT M.*, P.* FROM 
(  

  SELECT GROUP_CONCAT(p1.id) _fid, GROUP_CONCAT(p2.id) _mid, count(1)
  FROM new_person AS pb
     INNER JOIN new_person AS p1 ON pb.father_id = p1.id
     INNER JOIN new_person AS p2 ON pb.mother_id = p2.id
  WHERE (
     p1.last_name <> 'N.N.'
     AND p1.last_name <> '')
     OR (p2.last_name <> 'N.N.'
     AND p2.last_name <> '')
  GROUP BY p1.first_name, p1.last_name, p2.first_name, p2.last_name
  HAVING COUNT(1) > 1

) AS M INNER JOIN new_person as p ON M._fid = p.id

Všimněte si, že jsem přidal celý dotaz do příkazu from s aliasem M . Poté se můžete JOIN M k jinému stolu nebo si odtamtud dělejte, co chcete.




  1. Transformace z řádků na sloupec z různých tabulek a různých čísel řádků (sjednocení) v MySQL verze 8.0.17 pomocí Pivot

  2. Android - Zobrazení uživatelského jména z databáze sqlite po přihlášení v textView

  3. c# výběrový dotaz do databáze Oracle vyvolá vlastní mapování typu pro ... není zadáno nebo je neplatné

  4. Oracle - Vyberte, kde pole obsahuje malá písmena