php - 尝试使用 MySQL 查询从两个表中获取信息

标签 php mysql

我的页面信息和图像存储在两个单独的表中。我想要表“页面”中的“类型”和“正文”。然后是表“page_images”中的“图像”。显然两者都来自同一页面。

我想要一些随机页面的预告片。但是,我需要来自“page_images”的一张图像(尽管每个页面都存储了许多图像)以及“page”中的“type”和“body”。 (图像在表 page_images 中存储为“image_loc”)

-- TABLE  page

page_id | user_id | url_title     | title         | type | full_location | phone | body
----------------------------------------------------------------------------------------
1       | 1       | jazz_showcase | Jazz Showcase | Jazz | ...           | ...   | ... 

-- TABLE  page_images

image_id | user_id | page_title     | image_loc
-----------------------------------------------
1        | 1       | jazz_showcase  | ...
2        | 3       | jazz_showcase  | ...
3        | 2       | something_else | ...

此查询不起作用...

function OnTheSpot() {
        $query = mysql_query("SELECT page.body AS desc, page.style AS styles, page_images.image_loc AS images
                                FROM page
                                LEFT JOIN page_images
                                ON page.url_title = page_images.page_title 
                                ORDER BY RAND()
                                LIMIT 1
                            ");
        while($fetch = mysql_fetch_assoc($query)) {
            $desc = $fetch['desc'];
            $styles = $fetch['styles'];
            $images = $fetch['images'];
            echo $desc.'<br />';
            echo $styles.'<br />';
            echo $images.'<br />';
            }
        }

我想要演示 5 个左右的随机页面。每页限制一张图像以及显示的类型和正文。这将如何被查询。

最佳答案

desc 更改为例如描述Desc 是 MySQL 中的保留字,您不能使用它。

参见:MySQL Reserved Words

编辑:这也是给您的一个查询,它可能会解决您的问题:

$query = "SELECT page.body AS descr, page.url_title, page.style AS styles, page_images.image_loc AS images FROM page,page_images WHERE page_images.page_title = page.url_title ORDER BY RAND() LIMIT 1");

关于php - 尝试使用 MySQL 查询从两个表中获取信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8141927/

相关文章:

php - 查找与 2 个字符串最接近的百分比匹配,并返回下一个最接近的百分比

Java - 从 PHP 网页 URL 读取一个 txt 文件

php - jQuery 自动完成 Mysql PHP

php - mssql_rows_affected 返回错误的行数

php - 直接从 Eloquent 查询中提取和格式化日期

php - 将网站从 Windows 迁移到 Linux

mysql - 我设置了一个 Asterisk 服务器,但现在我无法访问网络管理区域

php - 显示2个表的数据

php - 如何在使用 WooCommerce 结帐时禁用默认运输和付款选项?

php - 在 PHP 中创建一次性使用的安全 token 的最佳方法是什么?