来自数据库的 Sql 查询

Posted

技术标签:

【中文标题】来自数据库的 Sql 查询【英文标题】:Sql query from database 【发布时间】:2015-11-20 16:22:41 【问题描述】:

我需要一些关于如何从 sql 进行软查询的帮助。 我有一个带有显示查询结果的 html 页面的 php 脚本。

我有这个问题:

 $ready_orders = DB::query( 'SELECT * FROM ordertable where orderid is NOT null ORDER by id DESC')->fetchAll( DB::FETCH_ASSOC ); 

从 HTML 我有这个;

<tal:block tal:condition="exists:orders">
  <table>
    <tr>
      <td>amount</td>
      <td> want counter here</td>
      <td>result 1</td>
      <td>result 2</td>
      <td>result 3</td>
      <td>result 4</td>
    </tr>
    <tr tal:repeat="order orders">
      <td tal:content="">
      ....
      </td>

      <td tal:content="order/id">
      ....
      </td>


      <td tal:content="order/orderid">
      ....
      </td>
      <td tal:content="order/productid">
      ....
      </td>
      <td tal:content="order/processed">
      ....
      </td>

      <td>
      </td>
    </tr>
  </table>

查询正在做我想做的所有事情,但需要将结果放在列表中。 像一个计数器 1,2,3,4,5 等

有可能吗?

【问题讨论】:

一切皆有可能?你尝试了什么 【参考方案1】:

包括一个

select count * from ordertable

然后把这个结果插入第一个

【讨论】:

不工作。我应该用这个 php tal 添加一些东西?添加了: .... 作为计数结果,但我认为这是错误的。 抱歉,我不确定我能否提供更多帮助。祝你好运!【参考方案2】:
SELECT COUNT(orderid) AS Order_Count
FROM ordertable
WHERE orderid IS NOT NULL

【讨论】:

【参考方案3】:

使用 foreach 循环

<tal:block tal:condition="exists:orders">
  <table>
   <tr>
      <td>amount</td>
     <?php 
       $i = 1;
       foreach($ready_orders as $result) ?>
          <td>result <?php echo $i++; ?></td> //your counter
       <?php  ?>
   </tr>

  <tr tal:repeat="order orders">
    <td tal:content="">
        ....
     </td>

  <td tal:content="order/id">
  ....
  </td>


  <td tal:content="order/orderid">
  ....
  </td>
  <td tal:content="order/productid">
  ....
  </td>
  <td tal:content="order/processed">
  ....
  </td>

  <td>
  </td>
</tr>

【讨论】:

仍然不工作。我对 php tal 不太好。它将查询写成数组。我想我需要在 phptal 中放一些不调用数组的东西
amount 想要计数器 result 1 result 2 result 3 result 4
.... .... .... .... ....
对此没有回应。我的漏洞查询是这样的:protected $template = 'order.felix'; public function Execute() $ready_orders = DB::query( 'SELECT * FROM order_felix WHERE orderid IS NOT NULL')->fetchAll( DB::FETCH_ASSOC ); $this->orders = $ready_orders;

以上是关于来自数据库的 Sql 查询的主要内容,如果未能解决你的问题,请参考以下文章

来自 JPA 查询的重复数据(sql 约束)

SQL 查询连接来自不同 fdb 数据库的表

来自 SQL 数据库的大量记录的 Linq 查询和 Foreach

从子查询 SQL 中选择最大数据,但它显示来自子查询的所有结果

来自 WordPress 中外部数据库的 SQL 查询

在来自 python 的 SQL 查询中将整数作为 VARCHAR() 数据类型传递