PHP在两个字符串之间进行选择

PHP在两个字符串之间进行选择,php,mysql,database,select,between,Php,Mysql,Database,Select,Between,我有以下mysql表: 表名:项目 item_no qty 1l1000bk 1 1l1020be 2 1l900bk 12 1l820be 19 创建提交到包含以下PHP代码的其他页面的表单后: $from = $_POST['from']; $to = $_POST['to']; $length = max(strlen($from), strlen($to)); $query6 = "SELECT * FROM items WHERE SUBSTRING(item_no, 1, "

我有以下mysql表:

表名:
项目

item_no qty
1l1000bk 1
1l1020be 2
1l900bk 12
1l820be 19
创建提交到包含以下PHP代码的其他页面的
表单后:

$from = $_POST['from'];
$to = $_POST['to'];

$length = max(strlen($from), strlen($to)); 

$query6 = "SELECT * FROM items WHERE SUBSTRING(item_no, 1, ".$length.")   BETWEEN '".$from."' AND '".$to."' ORDER BY item_no Desc";

$result6 = mysql_query($query6);
if(!$result6){
    mysqli_error();
    exit();
}



if(mysql_num_rows($result6)>0){
$num6 = mysql_num_rows($result6);

for($i=0;$i<$num6;$i++){    

$row6 = mysql_fetch_assoc($result6);
echo $row6['item_no']."</br>";
}
}
为什么1l1000比1l900小?它似乎只比较第三个字符?。如何确保它比较完整的字符串


请帮忙

这是因为它被排序为字符串,而不是整数。
         SELECT column_name(s)
         FROM table_name
         WHERE column_name BETWEEN value1 AND value2;

如果要对is进行排序,应使舒尔的所有数字都相同:因此,如果有1000和900,则使用0900。然后它将排序为ok。

它将比较整个字符串。要比较所需的值,请参阅本主题:
         SELECT column_name(s)
         FROM table_name
         WHERE column_name BETWEEN value1 AND value2;