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

Jak sprawdzić, czy w innej tabeli nie ma danych podczas łączenia mysql?

Dodaj warunek IF w zapytaniu SQL, coś takiego.

SELECT invoice_details.invoice_no,
       invoice_details.invoice_date,
       invoice_details.invoice_amount,
       SUM(IF(received_amount_details.received_amount IS NULL
               OR received_amount_details.received_amount = '', 0.0,
               received_amount_details.received_amount)) AS totalreceiptamt
FROM   (SELECT DISTINCT invoice_no,
                        received_amount
        FROM   received_amount_details) AS received_amount_details
       right join invoice_details
               ON received_amount_details.invoice_no =
                  invoice_details.invoice_no
WHERE  invoice_details.proje_id = '7'
GROUP  BY invoice_details.invoice_no 

Spowoduje to dodanie 0.0, ponieważ wartość domyślna nie jest odebrana_amount_details.received_amount JEST NULL lub jest pusta

Wykonujemy również właściwe sprzężenie, aby uzyskać wszystkie wartości ze strony details_details.

Możesz dowiedzieć się więcej o warunku IF w MYSQL tutaj,

https://www.w3schools.com/mysql/func_mysql_if.asp https://dev.mysql.com/doc/refman/8.0 /pl/if.html




  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 LOAD_FILE zwraca NULL

  2. mysql:wybierz, wstaw, usuń i zaktualizuj w jednym zapytaniu

  3. Błąd podczas ładowania modułu MySQLdb i instalacji pip MySQLdb

  4. Znajdź wszystkie te kolumny, które mają tylko wartości null, w tabeli MySQL

  5. Wprowadzenie do złączeń SQL