Php 关联数组键值对或Mysql别名更有效

Php 关联数组键值对或Mysql别名更有效,php,mysql,Php,Mysql,关联数组键名或Mysql别名更有效 我有一个名为student的mysql表,其中包含id、name和age列 我需要得到这样的结果 学生id学生姓名年龄 我有两个选择: $sql = "SELECT id as student_id, name AS student_name, age FROM student"; $result = mysqli_query($link, $sql) or die(mysqli_error($link)); if (mysqli_num_rows($resu

关联数组键名或Mysql别名更有效

我有一个名为student的mysql表,其中包含id、name和age列

我需要得到这样的结果

学生id学生姓名年龄

我有两个选择:

$sql = "SELECT id as student_id, name AS student_name, age FROM student";
$result = mysqli_query($link, $sql) or die(mysqli_error($link));
if (mysqli_num_rows($result) > 0) {
    while ($studentRow = mysqli_fetch_assoc($result)) {
        $studentInfo[] = $studentRow;
    }
}

注意:不要使用更改表列名的解决方案


我认为第一种方法更有效、更恰当。因为在第二个选项中,您需要将值从一个数组恢复到另一个数组,这可能需要更多的时间


所以根据我的说法,第一个选项更合适。

Mysql别名更有效,因为将来可能还会有一个带有
id
字段的类表。您可以使用别名
作为class\u id来解决此冲突

谢谢您的回答。考虑一下这种情况,对于一个大的MySQL数据库,别名应用和获取数据,你认为呢?对于大型数据库,你也可以应用这个。谢谢。忘记未来吧,在当前的结构下,您如何看待从大型数据库获取数据?
$sql = "SELECT id, name, age FROM student";
$result = mysqli_query($link, $sql) or die(mysqli_error($link));
if (mysqli_num_rows($result) > 0) {
    $i=0;
    while ($studentRow = mysqli_fetch_assoc($result)) {
        $studentInfo[$i]['student_id'] = $studentRow['id'];
        $studentInfo[$i]['student_name'] = $studentRow['name'];
        $studentInfo[$i]['age'] = $studentRow['age'];
        $i++;
    }
}