Non dovresti aggiungere tu stesso le virgolette intorno al ?
segnaposto. Rimuovili.
Dovresti anche passare un array, non una stringa. Supponendo che sia una stringa pulita, puoi semplicemente usare split
.
connection.query(
"delete from userFiles where type = 1 and typeId = " + taskId +
" and fileName NOT IN (?) ", [oldFileNames.split(/,\s*/)],
function (err, rows) {