0

COUNT クエリを既存の SELECT クエリにマージしようとして行き詰まりました。

現在、この SELECT ステートメントを使用して連絡先情報を取得しています。

SELECT contact.id_contact, contact.cname, contact.cemail, contact.trading_id, trading_name.trading_name
FROM contact
INNER JOIN trading_name ON contact.trading_id = trading_name.id_trading_name
WHERE (CHAR_LENGTH(contact.cname) > 0)
ORDER BY contact.cname

また、同じ SELECT ステートメントに何らかの形で含める必要があるこの COUNT クエリもあります。

SELECT COUNT(AlertID) AS CustomerAlertCountTotal FROM customer_support_dev.customer_alerts WHERE (AlertTradingID = @tradingid)

基本的に、「trading_name」ごとに「AlertID」がいくつあるかを知る必要があり、その値が「CustomerAlertCountTotal」で返されるようにする必要がありますが、クエリは 1 つだけ使用します。

(違いがある場合は、MySQL データベースを使用しています)

それが理にかなっていることを願っています:)

4

2 に答える 2

0

私の勘です。連絡先と貸衣装でテーブルに参加している場合。このようなものをマージできます。調整が必要な場合はお知らせください。

    SELECT contact.id_contact, contact.cname, contact.cemail, contact.trading_id, trading_name.trading_name, count(AlertID)
    FROM contact
    INNER JOIN trading_name 
     ON contact.trading_id = trading_name.id_trading_name
    LEFT JOIN customer_alerts
     ON contact.id = costumer_alerts.contact_id
    WHERE
     (CHAR_LENGTH(contact.cname) > 0) AND
     AlertTradingID = @tradingid
    GROUP BY contact.id
    ORDER BY contact.cname
于 2013-09-11T09:05:17.443 に答える