gpt4 book ai didi

mysql - 帮助复杂的mysql查询

转载 作者:行者123 更新时间:2023-11-29 03:11:34 25 4
gpt4 key购买 nike

我有一个现有的 mysql 查询需要添加,但我不确定如何去做。

这是我当前的 sql 查询。

SELECT tbl_brokerage_names.brokerage_id, tbl_brokerage_names.short_name,
b.indication, b.max_indication
FROM tbl_brokerage_names
LEFT JOIN (
SELECT * FROM tbl_recommendation_brokerages
WHERE recommendation_id = {$_GET['id']}
) b ON (tbl_brokerage_names.brokerage_id = b.brokerage_id)
ORDER BY tbl_brokerage_names.short_name ASC

这是我需要在上一个查询中处理的查询。

 SELECT * , COUNT( * )
FROM tbl_streetaccounts
JOIN tbl_brokerage_names
WHERE tbl_brokerage_names.brokerage_id = tbl_streetaccounts.brokerage_id

基本上我需要返回一个计数,所以我需要结合这两个查询。

最佳答案

您应该将它们作为两个单独的查询来运行。

COUNT(*) 查询将返回单行,因此无法在保留第一个查询的多行结果的同时将其与第一个查询“合并”。

此外,当您SELECT *, COUNT(*) 时,您将从任意行中获取列。


顺便说一句,你有一个耀眼的SQL injection漏洞。不要直接在 SQL 查询中插入 $_GET 参数。相反,将其强制为整数:

<?php
$id = (int) $_GET['id'];
$sql = "SELECT ... WHERE recommendation_id = {$id}";

关于mysql - 帮助复杂的mysql查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7489884/

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