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

Odlišné pouze v jednom sloupci – zobrazí pouze PRVNÍ duplicitní řádek

Pravděpodobně byste měli přidat další sloupec. Nyní je možné získat odlišný záznam pro každé account_id pomocí GROUP BY klauzule, ale výsledky všech neagregovaných sloupců mohou být nejednoznačné. Musíte mít nějakou objednávku, kterou schválíte, nebo indikátor uvnitř skupiny, abyste určili, který záznam pro každé accout_id je "první". S označením sloupců, který záznam v každé skupině je první dotaz, je jednoduché. Bez něj musíte přijmout nějakou objednávku s dotazem, který záznam je "první". Příklad abecedního pořadí full_name:

SELECT account_id, 
       full_name, 
       email, 
       login, 
       phone, 
       updated_at, 
       last_request_at, 
       unconfirmed_email 
  FROM table1 WHERE full_name IN (
    SELECT MIN(full_name) 
      FROM table1 
      GROUP BY account_id 
      WHERE id < '300'
  )


  1. Jak řeknu optimalizátoru MySQL, aby použil index na odvozené tabulce?

  2. Vraťte tabulku ve funkci PL/SQL

  3. Jazykový překlad pro tabulky

  4. PHP If else prohlášení, že databázový záznam je prázdný, zobrazí výchozí obrázek