Mysql
 sql >> база данни >  >> RDS >> Mysql

Mysql заявка за намиране на всички редове, които имат същите стойности като друг ред

Можете да правите обединения, за да се придвижвате с дублиращи се записи.

SELECT  a.*
FROM    TableName a
        INNER JOIN
        (
            SELECT  PersonID, ItemID, COUNT(*) totalCount
            FROM    TableName
            GROUP   BY PersonID, ItemID
            HAVING  COUNT(*) > 1
        ) b ON  a.PersonID = b.PersonID AND
                a.ItemID = b.ItemID

ИЗХОД

╔════╦══════════╦════════╗
║ ID ║ PERSONID ║ ITEMID ║
╠════╬══════════╬════════╣
║  1 ║      123 ║    456 ║
║  2 ║      123 ║    456 ║
║  5 ║      123 ║    456 ║
║  4 ║      444 ║    456 ║
║  7 ║      444 ║    456 ║
╚════╩══════════╩════════╝


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ръководство за проектиране на база данни за система за социални мрежи в MySQL

  2. Съхранение на негригориански дати в типа дата на Mysql

  3. Как да предотвратим създаването на записи, където стойността на две полета е една и съща?

  4. MySQL DELETE FROM с подзаявка UNION по условие IN

  5. Най-добри практики за дължина на колоната на SQL varchar