Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wyprowadzaj wiersze z wartością null tylko wtedy, gdy nie ma tego samego wiersza z wartością inną niż null

Jeśli chcesz uzyskać najnowsze dla każdego ItemID odpowiadający Type zaznaczenie, możesz utworzyć podzapytanie, aby najpierw zwrócić najnowszą cenę, a następnie dołączyć do oryginalnej tabeli, aby pokazać ją w końcowym wyniku. Poniżej znajduje się przykładowe zapytanie:

SELECT A.* 
FROM   ItemPrices A 
JOIN   ( SELECT itemid,
                TYPE,
                MAX(fromdate) AS mdt 
         FROM   ItemPrices 
         GROUP BY itemid,TYPE ) B
ON      A.itemid=B.itemid 
        AND A.type=B.type 
        AND A.fromdate=B.mdt
WHERE   A.type=1
ORDER BY A.itemid;

Demo można obejrzeć tutaj:https://www.db-fiddle.com/ f/7YCaiLYz9DE11wnijWEdi/3




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak korzystać z sesji na stronach internetowych?

  2. Pobierz wygenerowany uuid po wstawieniu php

  3. WYBIERZ z bazy danych mysql w wywołaniu javascript

  4. Jaki jest najlepszy sposób na zaimplementowanie wyszukiwania podciągów w SQL?

  5. Ściągawka w formacie daty MySQL