Riaan, > (line 910 in V2.5.1 of amavisd) > 'sel_penpals_msgid' => # with a nonempty message-id references list > "SELECT msgs.time_num, msgs.mail_id, subject, message_id, rid". > " FROM msgs JOIN msgrcpt ON msgs.mail_id=msgrcpt.mail_id". > " WHERE sid=? AND content!='V' AND ds='P' AND message_id IN (%m)". > " AND rid!=sid". > " ORDER BY rid=? DESC, msgs.time_num DESC LIMIT 1", > > That last line, "ORDER BY rid=?".. a condition inside the order clause? > hmm. Looks wrong to me, but the evidence to the contrary is that nobody > has reported sql errors yet!
It is correct as it stands. It is not a condition, it is an expresion. SELECT ... ORDER BY expression [ ASC | DESC | USING operator ] [, ...] The rid=? compares the rid from a field with a recipient id we have in the message under test, returning true or false. The ORDER BY rid=? DESC ensures we get an exactly matching record first (metching e-mail address as well as a message-id), and if there are none than a match by message id suffices. Mark ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ AMaViS-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/amavis-user AMaViS-FAQ:http://www.amavis.org/amavis-faq.php3 AMaViS-HowTos:http://www.amavis.org/howto/
