Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So drucken Sie jedes Element, das sich aus der Gruppierung nach Anweisung ergibt

Sie können JOIN Ihre Abfrage zurück gegen die Haupttabelle als Unterabfrage, um die ursprünglichen Zeilen und Dateinamen zu erhalten:

SELECT 
  main.number, 
  main.file
FROM 
  table AS main
  /* Joined against your query as a derived table */
  INNER JOIN (
    SELECT number, COUNT(*) AS sum domains 
    FROM table
    WHERE RIGHT(file, 2) = '_1' 
    GROUP BY number 
    HAVING sum domains > 1
    /* Matching `number` against the main table, and limiting to rows with _1 */
  ) as subq ON main.number = subq.number AND RIGHT(main.file, 2) = '_1'

http://sqlfiddle.com/#!2/cb05b/6

Beachten Sie, dass ich Ihren LIKE '%_1' ersetzt habe mit RIGHT(file, 2) = '_1' . Ohne Benchmark ist es jedoch schwer zu sagen, was schneller sein wird.