代わりにINを使用するのはどうですか
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`;
値が返されない理由は、このセクションのためです
AND `family` = 'Software_1Y'
AND `family = 'XI_1Y'
AND `family` = 'PI_1Y'
家族コード> 一度に3つの値すべてにすることはできませんが、3つの値のうちの1つである可能性があります。
そのため、INを使用します。
別の見方をすれば、ORを使用することですが、それは非常に時間がかかります。