1

2 つの別々のテーブルを結合する SELECT 文があります。

$result = mysql_query('SELECT * FROM (SELECT * FROM gslil0009) as table1 UNION SELECT * FROM (SELECT * FROM gslil0028) as table2' . ' ORDER BY lname');

while($row = mysql_fetch_array($result)) {
  echo $row['fname'];
}

行がどのテーブルから来たかを印刷するにはどうすればよいですか?

4

2 に答える 2

2
$result = mysql_query('SELECT *,'tbl1' FROM (SELECT * FROM gslil0009) as table1 
               UNION SELECT *,'tbl2' FROM (SELECT * FROM gslil0028) as table2' 
               . ' ORDER BY lname');

while($row = mysql_fetch_array($result)) {
  echo $row['fname'];
  echo $row['tbl1'];
}
于 2012-10-17T02:58:57.013 に答える
0

sel と同じ解決策を使用して、エラーを回避するためにバックスラッシュを追加し、テーブル名に名前を追加しました。

$result = mysql_query('SELECT *,\'table1\' AS tablename FROM (SELECT * FROM gslil0009) as table1 
               UNION SELECT *,\'table2\' AS tablename FROM (SELECT * FROM gslil0028) as table2' 
               . ' ORDER BY lname');

while($row = mysql_fetch_array($result)) {
  echo $row['fname'];
  echo $row['tablename'];
}

彼の投稿にコメントを追加できませんでした。

于 2012-10-17T03:30:58.647 に答える