Хотя я не буду предлагать вам делать это в запросе, как вы могли бы легко это сделать в php, вы можете попробовать это ..
SET @row_number = 0;
SELECT q_type, CASE
WHEN A.mxnum = AA.num
THEN q_title
ELSE ' '
END AS q_title, qcategory_question
FROM (
SELECT q_type, q_title, qcategory_question, (@row_number: = @row_number + 1)
AS num FROM `survey_question` AS sq
LEFT JOIN (
SELECT id, qid, qcategory_question
FROM survey_category_question
) AA
LEFT JOIN (
SELECT q_title, max(num) AS mxnum
FROM (
SELECT q_type, q_title, qcategory_question, (@row_number: = @row_number + 1) AS num
FROM `survey_question` AS sq
LEFT JOIN (
SELECT id, qid, qcategory_question
FROM survey_category_question
) scq
ON sq.id = scq.qid
)
GROUP BY q_title
) A
ON num = mxnum
);
надеюсь, это поможет ...