The following SQL works (so far, in limited testing) on Access and MS SQL Server 2005.
strSql = "SELECT TOP " & intResults
strSql = strSql & " TopicId, ReplyId, Author, PageCounter, Title, Descript, PostDate, Category "
strSql = strSql & "FROM "
strSql = strSql & "(SELECT TOP 100 PERCENT "
strSql = strSql & "C.CAT_NAME AS Category, "
strSql = strSql & "R.TOPIC_ID AS TopicId, "
strSql = strSql & "R.REPLY_ID AS ReplyId, "
strSql = strSql & "M.M_NAME AS Author, "
strSql = strSql & "T.T_REPLIES AS PageCounter, "
strSql = strSql & "T.T_SUBJECT AS Title, "
strSql = strSql & "R.R_MESSAGE AS Descript, "
Select Case strDBType
case "sqlserver", "mysql"
strSql = strSql & "COALESCE(R.R_LAST_EDIT, R.R_DATE) AS PostDate "
case "access"
strSql = strSql & "IIf(R.R_LAST_EDIT, R.R_DATE) AS PostDate "
End Select
strSql = strSql & "FROM (((" & strTablePrefix & "REPLY R "
strSql = strSql & "INNER JOIN " & strTablePrefix & "TOPICS T ON R.TOPIC_ID = T.TOPIC_ID) "
strSql = strSql & "INNER JOIN " & strTablePrefix & "FORUM F ON R.FORUM_ID = F.FORUM_ID) "
strSql = strSql & "INNER JOIN " & strMemberTablePrefix & "MEMBERS M ON R.R_AUTHOR = M.MEMBER_ID) "
strSql = strSql & "INNER JOIN " & strTablePrefix & "CATEGORY C ON R.CAT_ID = C.CAT_ID "
strSql = strSql & "WHERE (F.F_PRIVATEFORUMS = 0) AND T.T_STATUS=1 "
strSql = strSql & "UNION ALL "
strSql = strSql & "SELECT TOP 100 PERCENT "
strSql = strSql & "C.CAT_NAME AS Category, "
strSql = strSql & "T.TOPIC_ID AS TopicId, "
strSql = strSql & "(-1) AS ReplyId, "
strSql = strSql & "M.M_NAME AS Author, "
strSql = strSql & "T.T_REPLIES AS PageCounter, "
strSql = strSql & "T.T_SUBJECT AS Title, "
strSql = strSql & "T.T_MESSAGE AS Descript,"
strSql = strSql & "T.T_DATE AS PostDate "
strSql = strSql & "FROM ((" & strTablePrefix & "TOPICS T "
strSql = strSql & "INNER JOIN " & strTablePrefix & "FORUM F ON T.FORUM_ID = F.FORUM_ID) "
strSql = strSql & "INNER JOIN " & strMemberTablePrefix & "MEMBERS M ON T.T_AUTHOR = M.MEMBER_ID) "
strSql = strSql & "INNER JOIN " & strTablePrefix & "CATEGORY C ON T.CAT_ID = C.CAT_ID "
strSql = strSql & "WHERE (F.F_PRIVATEFORUMS = 0) AND T.T_STATUS=1 "
strSql = strSql & "ORDER BY PostDate DESC "
strSql = strSql & ") AS Posts "
strSql = strSql & "ORDER BY PostDate DESC;"
Correct me if I'm wrong, but wouldn't it just be the "TOP " sections that would need to be changed to make it work on MySQL?