Php 我应该使用什么查询来获取订单id而不是票证id?
我在一个管理员面板上工作,我需要管理员删除和编辑订单。现在我得到了这个问题:Php 我应该使用什么查询来获取订单id而不是票证id?,php,mysql,Php,Mysql,我在一个管理员面板上工作,我需要管理员删除和编辑订单。现在我得到了这个问题: <?php $results = db_getData("SELECT *, tickets.price FROM orders INNER JOIN tickets") ?> 预期输出是来自订单的所有数据,只有来自tickets表的价格(订单id从25开始计算)。我得到的输出是
<?php
$results = db_getData("SELECT *, tickets.price
FROM orders
INNER JOIN tickets")
?>
预期输出是来自订单的所有数据,只有来自tickets表的价格(订单id从25开始计算)。我得到的输出是:
在MySQL中,连接、交叉连接和内部连接是语法等价物(它们可以相互替换)。在标准SQL中,它们不是等价的。内部联接与ON子句一起使用,否则使用交叉联接
现在,您有一个交叉连接-票证和订单的每个组合,不管该票证是否属于该订单
您需要执行以下操作:
SELECT *, tickets.price
FROM orders
INNER JOIN tickets ON (orders.ticket_id = tickets.id)
或者可能更好
SELECT orders.*, tickets.price
FROM orders
INNER JOIN tickets ON (orders.ticket_id = tickets.id)
请添加示例数据和预期的输出。@juergend检查最近的编辑请使用包装函数,如
db_getData
,通常是一个坏兆头。这支持占位符值吗?@tadman我知道,但这是学校的要求。。。。它确实支持占位符值,但问题不在于函数本身,而在于检查,因为如果这是生产代码,那么真正糟糕的事情就是这样发生的。希望这次作业顺利。谢谢你@dave这对我来说很好!
SELECT orders.*, tickets.price
FROM orders
INNER JOIN tickets ON (orders.ticket_id = tickets.id)