在php中进行SQL查询

时间:2012-08-08 11:46:17

标签: php sql

请考虑下面给出的情景

我在sql表中有两个表 用户

 +----+-----------+------------+-------------+-----------+----------+------+-------------+-------------+-----------+-----------+---------+------------+--------+-----------+--------+----------------+------------------+------------------+--------------------+--------------------------+-----------------+-------+--------------+---------------+
    | id | user_name | first_name | middle_name | last_name | password | role | org_name_id | timezone_id | city      | state     | country | street     | pin    | user_type | status | primary_mobile | secondary_mobile | primary_landline | secondary_landline | primary_email            | secondary_email | notes | date_created | date_modified |
    +----+-----------+------------+-------------+-----------+----------+------+-------------+-------------+-----------+-----------+---------+------------+--------+-----------+--------+----------------+------------------+------------------+--------------------+--------------------------+-----------------+-------+--------------+---------------+
    |  1 | Vivek     | vicky      | singh       | baghel    | 12345    |      |           1 |           1 | Gwalio    | Mp        | iNDIA   | Belly Road | 47001  |           |   NULL | 65677     | 68990       | 678888897       | 67678         | vickysingh@gmail.com | hi@viv.com      |       | NULL         | NULL          |

,第二个是会议桌,如

| id | name        | meetingID     | meeting_type | status | recurring_time | attendee_passwd | moderator_passwd | date_created        | timezone | meeting_datetime    | reminder | duration | created_by_id | sms_no | conferenceID | meeting_logout_url | max_participants | participants_id |
+----+-------------+---------------+--------------+--------+----------------+-----------------+------------------+---------------------+----------+---------------------+----------+----------+---------------+--------+--------------+--------------------+------------------+-----------------+
|  1 | New Meeting | REG_892983853 |              |   NULL |                | 23303           | 94842            | 0000-00-00 00:00:00 | GMT  10  | 2012-08-08 12:00:00 |        0 | 60       |             1 |    123 |         NULL | http://lov.com     |               20 |            NULL |
|  2 | Before3     | REG_860806066 |              |   NULL |                | 95390           | 28030            | 0000-00-00 00:00:00 | GMT  10  | 2012-08-08 03:00:00 |        0 | 60       |             1 |    123 |         NULL | http://lov.com     |               20 |            NULL |

我正在尝试沿user_name获取会议详细信息,因此我正在进行查询,如

$get_meetingsql = "SELECT u.user_name from demo_user inner join demo_meeting m on m.created_by_id= u.id";

不幸的是上面的查询对我不起作用请帮帮我

4 个答案:

答案 0 :(得分:2)

 $get_meetingsql = "SELECT u.user_name
                    from User u
                    inner join demo_meeting m on m.created_by = u.id
                    WHERE meeting_id = '$meetingid'";

答案 1 :(得分:1)

created_by.user_name< - 究竟是哪一列?表示法表示:表created_by,在该表中有一个名为user_name的列。

还有一个额外的,在那之后。

=====================================

更新

你有:

[错误查询]在m.created_by_id = u.id

上从demo_user内连接demo_meeting m中选择u.user_name

但你是什么?它只是一个别名,但你没有说出什么。我希望你在你的解释中意味着一个名为User的表(但是它被称为demo_user是你的另一个查询,请尽量少用这些东西马虎......)

所以我希望你想要这样的东西:

[好查询]从demo.user中选择u.user_name作为你在m.created_by_id = u.id上的内部联接demo_meeting m

重要提示:请参阅我别名的demo_user作为你。这只是意味着您可以使用u而不是说demo_user。

所以它与:

相同

[好查询]从demo_user中选择QXZY.user_name作为QXZY内部联接demo_meeting m on m.created_by_id = QXZY.id

正如您所看到的,荒谬的“QXZY”只是一个名称,是查询中的别名。

如果您不喜欢,请改为命名表格。 (对于更复杂的查询,您需要两次相同的表,这还不够。但暂时忘掉它。)

一般情况下:不要使用您不理解的语法。永远不会。只需在网上或好的教科书中查阅。

答案 2 :(得分:0)

SQL是垃圾。请参阅“created_by.user_name,from” - 是“created_by”表,PHP对象?另外,你有一个逗号:“,from”。

答案 3 :(得分:0)

复制sql并首先尝试通过替换php变量在phpmyadmin中执行。这是调试查询的最佳方法。