过滤UNION ALL选项

时间:2012-11-30 07:53:32

标签: php mysql union

我有以下代码:

$variable = @mysql_result(mysql_query("SELECT * 
FROM
(
SELECT `question_text`, `posted` FROM `questions` 
WHERE `interest` = '$interests_following'
UNION ALL
SELECT `article_title`, `posted` FROM `articles` 
WHERE `interest_id` = '$interestid'
UNION ALL
SELECT `interest_pic_title`, `posted` FROM `interest_pictures` 
WHERE `interest_id` = '$interestid'
) t
ORDER BY posted DESC LIMIT 1

此论坛question_textarticle_titleinterest_pic_title并按posted(时间戳)排序并显示最新

我现在希望在结果旁边显示一个小图像(例如结果为question_text时的html中的问号),以显示它是什么类型,如何过滤它来执行此操作? / p>

由于

2 个答案:

答案 0 :(得分:1)

您可以添加一个额外的列,它将包含一个静态变量。

请参阅下面的示例。

$variable = @mysql_result(mysql_query("SELECT * 
FROM
(
SELECT 'question' as type, `question_text`, `posted` FROM `questions` 
WHERE `interest` = '$interests_following'
UNION ALL
SELECT 'article' as type, `article_title`, `posted` FROM `articles` 
WHERE `interest_id` = '$interestid'
UNION ALL
SELECT 'interest_picture' as type, `interest_pic_title`, `posted` FROM `interest_pictures` 
WHERE `interest_id` = '$interestid'
) t
ORDER BY posted DESC LIMIT 1

答案 1 :(得分:0)

你的申请是什么?我的意思是你想要这个:

HTML< - > MYSQL

但是html和mysql之间有什么关系? PHP?一个网络框架?

编辑:我不知道PhP,但是

你可以创建另一个sqlQuery,只给你一个带“问题文本”的表

例如

SELECT question-text FROM .....

然后在php中你可以做类似

的事情

伪代码:

if("question-text" != null){

   print <image src="..."> </image>    //Php with html code

}