PHP/SQL:仅使用一个查询,如果两个表中都有数据,则从两个表中选择行;否则,仅从一个表中进行SELECT

编程入门 行业动态 更新时间:2024-10-24 06:35:45
本文介绍了PHP/SQL:仅使用一个查询,如果两个表中都有数据,则从两个表中选择行;否则,仅从一个表中进行SELECT的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我有两个评分/投票表.一个用于用户投票和统计,另一个用于外部投票. 外部投票表始终具有数据,因为它的DEAFULT = 0,但用户投票仅包含任何用户为该特定ID投票的数据.

I have two rating/votes tables. One for user votes and stats and another for external votes. The external votes table always have data because it has a DEAFULT = 0, but the users votes only contains data if any user have voted for that specific ID.

所以我做这样的事情:

$sql = 'SELECT ratings_stats.votes, ratings_stats.total_value, ratings_stats.view, ratings_stats.fav, ratings_stats.wish, ratings_external.votes, ratings_external.total_value FROM ratings_stats, ratings_external WHERE ratings_stats.imdbID = ? AND ratings_stats.imdbID = ratings_external.imdbID LIMIT 1';

我想从两个表中选择数据(如果可用),或者如果没有,则仅形成第二个(外部选票)表.

I want to select data from both tables if available OR only form the second (external votes) table if not.

如何在不进行新查询的情况下做到这一点?

How to can I do it without making a new query?

推荐答案

SELECT ratings_stats.votes, ratings_stats.total_value, ratings_stats.view, ratings_stats.fav, ratings_stats.wish, ratings_external.votes, ratings_external.total_value FROM ratings_external LEFT JOIN ratings_stats ON ratings_stats.imdbID = ratings_external.imdbID WHERE ratings_external.imdbID = ? LIMIT 1

更多推荐

PHP/SQL:仅使用一个查询,如果两个表中都有数据,则从两个表中选择行;否则,仅从一个表中进行SELECT

本文发布于:2023-10-26 09:45:35,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1529792.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:两个   中都   数据   PHP   SQL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!