Mysql选择多个表获取具有相同列的值

时间:2013-03-07 10:55:59

标签: php mysql

好的,这很严厉,

无论如何,我修改了我的问题并在这里做了一个代码示例。

我想要做的是,需要获取赠品表的列标题值竞争列标题值

$query = "SELECT giveaway_table.title, competition.title FROM giveaway_table, competition WHERE giveaway_table.status=competition.status";
$result = db_query($query)->fetchObject();

如何检索值?

当我使用此

echo $result->title;

它只能反映比赛的冠名价值。

如何检索赠品表的标题栏值?

我用过这个

$result->title[0]

它只显示比赛标题价值的第一个字母。

任何帮助将不胜感激。 :)

3 个答案:

答案 0 :(得分:2)

使用不同的别名:

$query = "SELECT giveaway_table.title as gtitle, competition.title as ctitle FROM giveaway_table, competition WHERE giveaway_table.status=competition.status";

答案 1 :(得分:2)

您可以使用别名来消除歧义:

$query = "SELECT giveaway_table.title AS giveaway_title, competition.title AS competition_title FROM giveaway_table, competition WHERE giveaway_table.status=competition.status";
$result = db_query($query)->fetchObject();

然后回声:

echo $result->competition_title;
echo $result->giveaway_title;

答案 2 :(得分:2)

使用别名

SELECT
  giveaway_table.title AS GiveAwayTitle,
  competition.title AS CompetitionTitle
FROM giveaway_table,
  competition
WHERE giveaway_table.status = competition.status

使用php

echo $result->GiveAwayTitle;
echo $result->CompetitionTitle;