如果我有这样的一个表:什么是默认ORDER BY如果我使用mysqli的SELECT语句::查询
int VARCHAR int
----------------------------------
1 "U" 1
2 "A" 1
3 "B" 1
,我跑通过PHP中的MySQLi这样的查询:
$sql = "SELECT * FROM " . parent::GetTableName();
if ($current_user_only == TRUE)
$sql = $sql . " WHERE userID_FK=" . parent::GetUserID();
$result = $this->get_db_con()->query($sql);
if ($result == FALSE)
throw new Exception("SQL exec failed (". __FILE__ . __LINE__ . "): $this->get_db_con()->error");
while ($row = mysqli_fetch_array($result))
{
echo($row[1]);
}
我得到的输出是这样的:
2 "A" 1
3 "B" 1
1 "U" 1
这就是结果似乎是由VARCHAR列进行排序。如果我在SEQUEL PRO中运行相同的查询,它会按照我期望的顺序给出结果,这是他们在表中输入的顺序。
任何想法?
你应该明确地设置*顺序*不管数据库。 – 2011-11-28 19:22:23
ALTER TABLE'TABLE' ORDER BY'ID' – misima
如果我其实不在意订单,我应该还是“ORDER BY”?会影响性能吗? –