簡體   English   中英

帶有if語句的MySQL SELECT COUNT-最佳實踐是什么?

[英]MySQL SELECT COUNT with if statement - What is the best practice?

我的執行方式結果不一致,所以我想問一下這里的天才們您的想法。 這是我在做什么...

$ccquerycount = "SELECT COUNT(*) as `count` FROM payments_cc_info WHERE user_id=$userid";
....
....
if ($row['count'] == "1") {
} else {
}

有沒有更好的方法來設計if語句以獲得一致的結果?

嘗試這個

  $ccquerycount = "SELECT * FROM payments_cc_info WHERE user_id=$userid";
    $result = mysql_query($ccquerycount)
    if (mysql_num_rows($result)==1) {
    } else {
    }

mysql_num_rows()獲取結果中的行數

警告mysql_擴展名已被棄用。 相反,應使用MySQLi或PDO_MySQL擴展名。

我假設您正在執行查詢,檢索結果集,獲取行並在if語句之前提取值(如果沒有,那么您可能首先需要這樣做!這是PHP-MySql開始

如果您已經這樣做了,而忘了在您的帖子中提及這一點(直到被證明有罪之前我都是無辜的,我總是說!! :)),那么當您獲得不一致的結果時,您可以為我們提供更多有關不同數據集的數據嗎?

您還可以在MySQL查詢中添加if條件,如下所示。

SELECT 
   rating,
   trade_service_id,
   ifnull(round(sum(belonging_product_ratings.rating)/count(*),0),0) AS avg,
   count(*) AS count
FROM
   belonging_product_ratings WHERE trade_service_id != 0
GROUP BY
   belonging_product_ratings.trade_service_id

其他替代方法如下

select
   BelongingProductRating.*,
   User.*
from
   belonging_product_ratings AS BelongingProductRating
LEFT OUTER JOIN
   users AS User ON
   IF( BelongingProductRating.rated_user_id != '$userID', BelongingProductRating.rated_user_id, BelongingProductRating.user_id) = User.id

您可以說mysql查詢中的條件是否與三元if相同。
您也可以根據您的php變量設置查詢。

我正在分享此代碼,但最終我卻沒收到。 您所需要做的就是根據表格的字段和條件進行設置。 隨便問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM