来自数据库的 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 添加一些东西?添加了: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 |
.... | .... | .... | .... | .... |
以上是关于来自数据库的 Sql 查询的主要内容,如果未能解决你的问题,请参考以下文章
来自 SQL 数据库的大量记录的 Linq 查询和 Foreach