【问题标题】:echo result from compare 2 table sql in 1 database来自比较 1 个数据库中的 2 个表 sql 的回显结果
【发布时间】:2015-11-23 23:15:24
【问题描述】:

数据库名称:测试
表名:员工
结构

+-----+------------+----------+--------+
| id  | name       | Password |  code  |
+-----+------------+----------+--------+
| 11  | John       | test122  |   A1   |
| 12  | Johana     | test124  |   A2   |
| 13  | David      | test125  |   A3   |
| 14  | Anna       | test126  |   A1   |
| 15  | Mike       | test127  |   A5   |
+-----+------------+----------+--------+

表名:code_id
结构

+-------+------------+
| code  | codename   |
+-------+------------+
| A1    | Security   |
| A2    | Manager    |
| A3    | Admin      |
| A4    | guest      |
| A5    | CEO        |
+-------+------------+

我想说欢迎,它成功了

$strSQL = "SELECT * FROM employee";
    $rs = mysql_query($strSQL);
    while($row = mysql_fetch_array($rs)) {
    $idcode = $row['code'];
      }
    mysql_close();

回显 $idcode
结果:
欢迎,A1


现在我想要 回响 欢迎,经理 或者 欢迎 CEO

如何在 php 上查询?

【问题讨论】:

    标签: php sql arrays


    【解决方案1】:

    试试这个查询

    $strSQL = "select a.*,b.codename from employee as a join code_id as b on a.code=b.code";
        $rs = mysql_query($strSQL);
        while($row = mysql_fetch_array($rs)) {
        $idcode = $row['codename'];
          }
        mysql_close();
    

    【讨论】:

    • 那么如何在 php 上回显?
    【解决方案2】:

    不用查询的更简单的方法可以是这样,

    <?php
    function convertCode($code) {
        $codes = [
            "A1" => "Security",
            "A2" => "Manager",
            "A3" => "Admin",
            "A4" => "guest",
            "A5" => "CEO"
        ];
        return $codes[$code];
    }
    ?>
    

    然后在你的循环中,

    echo "Welcome " . convertCode($row['code']) . ".";
    

    编辑 1

    您不应该再使用mysql,因为它已被正式弃用。您应该更改为mysqliPDO

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-16
      相关资源
      最近更新 更多