MySQL选择特定列

时间:2011-12-14 07:37:09

标签: php mysql

我是PHP的新手,我想知道如何从一行中选择一个特定的列。例如,如果我想显示Joe Bugly的名字,其中ID,名字,姓氏和电子邮件都是列。

4 个答案:

答案 0 :(得分:2)

假设您不希望所有使用select * from ... (a)返回的列,您只需明确列出所需的列:

select fname, lname from ...

例如,假设您知道您的用户ID是jbug01,而您只想要相应的电子邮件地址:

select email
from   users
where  userid = 'jbug01'

就在PHP中执行此操作而言,以下代码段可能有所帮助:

<?php
    $conn = mysql_connect ("localhost", "paxdiablo", "supersekritsauce");
    if (!$conn) {
        die ('Could not connect: ' . mysql_error());
    }
    mysql_select_db ("my_database", $conn);
    $result = mysql_query ("select email from users where userid = 'jbug01'");
    while ($row = mysql_fetch_array ($result)) {
        echo $row['email'] . "<br />";
    }
    mysql_close ($conn);
?>

(a)有一些宝贵的少数案例,其中选择*是有意义的(除了需要所需的工具) DB查看器等列。

您通常应该明确选择列。这可能允许您在过程中更早地检测模式更改的问题,而不是盲目地选择所有内容的情况。

它还会导致传输的信息减少,这对于小型数据库或系统而言可能并不重要,因为小型数据库或系统的所有内容都在同一个盒子上运行,但 会影响系统的可扩展性,无论是数据还是网络的大小和分布。

答案 1 :(得分:0)

试试这个:

$conn = mysql_connect("localhost","root");
mysql_select_db("DbName",$conn);
$query = "Select u.FirstName from Users u";
$results =  mysql_query($query);
while($row = mysql_fetch_array($results)){
    echo $row['FirstName'];
}

答案 2 :(得分:0)

试试这个:

$db = new PDO('mysql:host=hostname;dbname=dbname', 'username', 'password');

$stmt = $db->query('select id from games where ...');
while ($id = $stmt->fetchColumn(0)) {
    echo $id;
}

如果这有帮助,请标记答案。

Reference

答案 3 :(得分:0)

这实际上是一个SQL问题;)

取决于你如何选择Joe Bugly的唱片。如果您是根据ID选择,那么

SELECT fname
FROM your_table_name
WHERE ID = <ID of Joe Bugly>

这样您选择了一条记录,并在SELECT子句中应用fname,您将过滤所需的列数