J'ai une requête mysql existante à laquelle je dois ajouter et je ne sais pas comment procéder.Aide avec la requête mysql complexe
Voici ma requête SQL actuelle.
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
Voici la requête dont j'ai besoin pour travailler dans la requête précédente.
SELECT * , COUNT(*)
FROM tbl_streetaccounts
JOIN tbl_brokerage_names
WHERE tbl_brokerage_names.brokerage_id = tbl_streetaccounts.brokerage_id
Fondamentalement, j'ai besoin de retourner un nombre, donc j'ai besoin de combiner ces deux requêtes.
Est-ce possible si je change COUNT (*) en COUNT (tbl_streetaccounts.brokerage_id) –
@Bill, je n'approuve pas cette solution, elle casse quand on travaille avec des chaînes. Pourquoi ne pas utiliser 'mysql_real_escape_string()' et '" SELECT ... O WH recommandation_id = '$ id' ";'. C'est toujours sûr, que ce soit un entier ou une chaîne. – Johan
@Johan: dans les cas où la colonne "id" doit être comparée à un entier (ce qui est pratiquement toujours vrai), il est plus simple et plus rapide de simplement contraindre la valeur à '(int)'. Si la colonne id est un non-entier, vous pouvez utiliser mysql_real_escape_string comme vous le dites. –