簡體   English   中英

從右到左分兩列輸出MySql數據

[英]Output of MySql Data in Two Columns from Right to Left

從右側開始的兩列中需要從mySql表輸出數據記錄,即記錄1和2應該出現在第二列中,而3和4應該顯示在第一列中。 這兩個列均應能夠顯示任意數量的記錄,而不僅僅是此處顯示的兩個示例。

mySql表:

1. fname     lname     age     address
2. fname     lname     age     address
3. fname     lname     age     address
4. fname     lname     age     address

使用的代碼:

<?php
$con = mysql_connect("localhost","mysql_user","mysql_password");
if (!$con)
   {
   die('Could not connect: ' . mysql_error());
   }

mysql_select_db("test", $con);
?>

<style type='text/css'>
#div1, #div2 {float:left; margin-left:50px; width:300px;}
</style>

<?php
$result = mysql_query("SELECT * FROM member");
$rowcount = mysql_num_rows($result);

echo "<div id='div1'>";
$i = 0;

while($row = mysql_fetch_array($result))
   { 
      echo "Sr. No." . " " . $row['srno'] . " " . $row['fname'] . " " . $row['lname'] . " " . $row['age'] . " " . $row['address'];
   $i++;
   echo "<br/>";
   echo "<br/>";

      if ($i == floor($rowcount / 2)) {

   echo "</div><div id='div2'>";  
    }
   }
echo "</div>";

mysql_close($con);
?>

以上代碼的輸出:

Sr. No. 1. fname   lname   age   address               Sr. No. 3. fname   lname   age   address
Sr. No. 2. fname   lname   age   address               Sr. No. 4. fname   lname   age   address

需要的輸出:

Sr. No. 3. fname   lname   age   address               Sr. No. 1. fname   lname   age   address
Sr. No. 4. fname   lname   age   address               Sr. No. 2. fname   lname   age   address

MySQL解決方案:

您需要在select語句中使用ORDER BY FIELD( ...

SELECT * FROM member ORDER BY FIELD( id, 3,4,1,2 )

此語句按以下順序生成您的記錄。

3. fname     lname     age     address
4. fname     lname     age     address
1. fname     lname     age     address
2. fname     lname     age     address

參考

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM