Título ##Tenho uma tabela com dados como abaixo
+----+--------+-----------+----------------+
| id | name | testfield | status |
+----+--------+-----------+----------------+
| 1 | raju | 11 | import |
| 1 | raju | 11 | ticket |
| 2 | ravi | 22 | import |
| 2 | ravi | 33 | ticket |
| 3 | ramesh | 44 | import |
| 3 | ramesh | 44 | ticket |
| 4 | rahul | 55 | import |
| 5 | rudra | 66 | import |
+----+--------+-----------+----------------+
agora eu quero saída como abaixo
+----+--------+-----------+----------------+
| id | name | testfield | status |
+----+--------+-----------+----------------+
| 1 | raju | 11 | ticket |
| 2 | ravi | 33 | ticket |
| 3 | ramesh | 44 | ticket |
| 4 | rahul | 55 | import |
| 5 | rudra | 66 | import |
+----+--------+-----------+----------------+
explicação: Se eu tiver uma linha de status 'ticket' para um par (id,name), esta linha deve ser selecionada. Se eu tiver uma linha de status 'import' para um par (id,name), mas nenhuma linha com status 'ticket' para tal par (id,name), a linha deve ser selecionada.
Por exemplo, as id de linhas 1,2 e 3 têm o status 'ticket', portanto devem ser exibidas. As linhas com id 4 e 5 não possuem uma linha 'ticket' correspondente (com os mesmos valores (id,name)), então 'import' deve ser exibido.
Uma possível solução baseada em operações de conjunto. Pelo que entendi, você deve exibir todas as linhas que contêm um 'ticket' nos campos de status e todas as linhas com uma 'importação' no campo de status onde não há uma linha semelhante com um 'ticket' no campo de status.
Mas sqlfiddle não gosta disso. Diz