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

Rozlište duplikáty ve smyčce foreach od sql

Alternativa – nechte databázi, aby práci udělala za vás:

SELECT j.*, c.appl_count FROM jp_applications j
    INNER JOIN (SELECT user_id, count(1) as appl_count FROM jp_applications
            WHERE application_status = "Awaiting Response"
            GROUP BY user_id) c on c.user_id = j.user_id
WHERE j.application_status = "Awaiting Response"
ORDER BY j.job_id

Pak bude mít vaše sada výsledků k dispozici pole 'appl_count', pokud je větší než 1, připojte třídu. Tím odpadá nutnost provádět v kódu aplikace jakékoli účtování typu tit-for-tat.



  1. Dopad události query_post_execution_showplan Extended v SQL Server 2012

  2. Novinka v PostgreSQL 12:Generované sloupce

  3. PostgreSQL DATEADD() Ekvivalent

  4. účel maximálního počtu v php a mysql