Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Bagaimana cara memilih beberapa nilai di kolom yang sama?

Bagaimana kalau menggunakan IN sebagai gantinya

SELECT  `salesorder`,
        `masterproduct`,
        `family`,
        `birthstamp`,
        `duedate`, 
        COUNT( * ) AS `total` 
FROM    `report` 
WHERE   `birthstamp` BETWEEN '$startDT' AND '$endDT' 
AND     `family` IN ('Software_1Y','XI_1Y','PI_1Y')
GROUP BY    `salesorder`,
            `masterproduct`,
            `family`,
            `duedate`;

Alasan mengapa tidak ada nilai yang dikembalikan, adalah karena bagian ini

AND `family` = 'Software_1Y' 
AND `family = 'XI_1Y' 
AND `family` = 'PI_1Y'

family tidak bisa semua 3 nilai sekaligus, tapi mungkin 1 dari 3 nilai.

Itulah mengapa Anda akan menggunakan IN.

Cara lain untuk melihatnya adalah dengan menggunakan OR, tetapi itu akan menjadi sangat panjang lebar.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menu rekursif PHP dalam struktur daftar HTML

  2. sql dapatkan jumlah total dan filter dalam satu kueri

  3. Bagaimana cara memformat tanggal dari stempel waktu di PHP?

  4. Akses ditolak untuk 'pengguna'@'localhost'

  5. Pernyataan SQL mengabaikan parameter where