gpt4 book ai didi

php - 选择表 A 的所有左连接列,其中包含多个不影响显示所有表 A 的 where

转载 作者:行者123 更新时间:2023-11-29 13:38:07 24 4
gpt4 key购买 nike

我有一个工单跟踪网站。在我的 new_workorder.php 脚本中,我的表单是由表 cl_billing_codes 中的值动态生成的。提交表单后,值将进入 cl_work_order_billing_codes,其中包含代码 ID、数量以及包含工作订单 ID 的列,以将值与工作订单联系起来。

我正在尝试构建 edit_workorder.php 脚本。我需要提取 cl_billing_codes 的所有值,同时保留用户从 new_workorder.php 表单提交的数据数量。这是我最大的努力。

SELECT
`cl_billing_codes`.`id` AS `id`,
`cl_billing_codes`.`billing_code` AS `billing_code`,
`cl_billing_codes`.`desc` AS `desc`,
`cl_billing_codes`.`point_value` AS `point_value`,
`cl_work_orders_billing_codes`.`quantity` AS `quantity`,
`cl_work_orders_billing_codes`.`billing_code_id` AS `id2`
FROM
`cl_billing_codes`
LEFT JOIN `cl_work_orders_billing_codes`
ON `billing_code` = `cl_work_orders_billing_codes`.`billing_code_id`
WHERE
`cl_billing_codes`.`service` = '1'
AND `cl_work_orders_billing_codes`.`work_order_id` = 1585
ORDER BY `billing_code`

这样做是行不通的,因为我需要 cl_billing_codes 中的所有数据,其中 service 列等于 1,但只需要 中的数量值cl_work_order_billing_codes,其中该表中的 work_order_id 值等于定义的值,并且两个表中的帐单代码都匹配。

/////附加/////

这是我要使用的表数据的示例。 http://sqlfiddle.com/#!2/49783/1

最佳答案

我认为您只需将 work_orders_billing_codes 表上的条件移至 on 子句中。然后,如果没有匹配,您仍然会在 billing_codes 中获得所有适当的记录。

SELECT bc.`id` AS `id`, bc.`billing_code` AS `billing_code`, bc.`desc` AS `desc`,
bc.`point_value` AS `point_value`,
wobc.`quantity` AS `quantity`,
wobc.`billing_code_id` AS `id2`
FROM `cl_billing_codes` bc LEFT JOIN
`cl_work_orders_billing_codes` wobc
ON bc.id = wobc.`billing_code_id` AND wobc.`work_order_id` = 1585
WHERE bc.`service` = '1'
ORDER BY `billing_code`;

关于php - 选择表 A 的所有左连接列,其中包含多个不影响显示所有表 A 的 where,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18500770/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com