【发布时间】:2013-06-21 11:34:41
【问题描述】:
我在 MySQL 中有下表:
表名:all_items
item_no qty
1l900fu 1
1l950be 2
1l1000bk 3
1l1020rd 5
1l1200fu 7
我需要做两个选择,其中应该输出两个不同的csv文件,如下所示:
CSV file 1 CSV file 2
item_no qty item_no qty
1l900fu 1 1l1000bk 3
1l950be 2 1l1020rd 5
1l1200fu 7
根据上表,字符串包含数字和字母,所以想着做一个strlen,但是不知道怎么放在查询语句里面:
//CSV file 1
$result = mysql_query("SELECT item_no, qty FROM all_items ORDER BY item_no Asc");
//Excuting Values from Mysql to CSV
$row = 1; // 1-based index
while($row_data = mysql_fetch_assoc($result)) {
$col = 0;
//Row Values
foreach($row_data as $key=>$value) {
$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col, $row, $value);
$col++;
}
$row++;
}
知道它是如何工作的吗?我想根据strlen分离item_no。
对不起,我对 PHP 不是很熟悉。请帮忙!
【问题讨论】:
-
您可以使用 intval() 获取字符串的 int 值
-
1000 指的是什么?如果是数量阈值,那
strlen和它有什么关系? -
好笑,好像有人刚刚问了类似的问题...stackoverflow.com/questions/17284386/mysql-compare-two-columns
-
@MarcelloRomani
strlen计算字符,所以我1l900bk是 7 而1l1000bk是 8..我想selectstrlen = 8的项目...这有什么意义? -
这本身就很有意义。但是
strlen(item_no)与此有何关联:“包含小于 1000 的项目和大于 1000 的其他文件”?