2
SELECT
M.strMemID AS 'Member ID',
M.strMemLastname AS 'Last Name',
M.STRMEMFIRSTNAME AS 'First Name',
M.strMemMiddlename AS 'Middle Name',
TIMESTAMPDIFF(YEAR, m.dtmMemBirthday, CURRENT_DATE) AS 'Age'
FROM TBLMEMBER M
WHERE m.strMemID NOT IN (SELECT DISTINCT m.strmemid
FROM tblmember m, tblmemberministry mm, tblpositionmemberministry pmm
WHERE m.strMemID = mm.strMMMemID AND mm.strmemmincode = pmm.strpmmmemmincode AND (
pmm.strPMMCode = 'POS041' OR PMM.STRPMMCODE = 'POS009' OR PMM.STRPMMCODE = 'POS010' OR
PMM.STRPMMCODE = 'POS012' OR PMM.STRPMMCODE = 'POS017' OR PMM.STRPMMCODE = 'POS021' OR
PMM.STRPMMCODE = 'POS028' OR PMM.STRPMMCODE = 'POS031' OR PMM.STRPMMCODE = 'POS037' OR
PMM.STRPMMCODE = 'POS039') AND mm.dtmMMDateQuit IS NULL AND pmm.dtmpmmdateto IS NULL AND
TIMESTAMPDIFF(YEAR, m.dtmMemBirthday, CURRENT_DATE) > 30);
これは私のコードです。混乱しているサブクエリは無視してください。私の目的は、会員をage > 30
で表示することです。私はTIMESTAMPDIFF
を使用しています。しかしこのクエリは30歳未満の人たちと同様に返されます。MySQL TIMESTAMPDIFF関数が期待した結果を返さない
小文字に編集 – Drew