recherche

Maison  >  Questions et réponses  >  le corps du texte

php - Requête de jointure gauche de MySQL, lorsqu'un champ de la table de droite est vide, pourquoi le champ correspondant dans la table de gauche ne peut-il pas être trouvé ?

SELECT category.c_id,category.c_name,jobs.amount FROM qs_category as category 
LEFT JOIN qs_jobs as jobs ON category.c_id=jobs.trade 
WHERE jobs.addtime >= 1483200000 AND jobs.addtime <= 1498838400 

Il s'agit d'une instruction de requête. La catégorie sur le tableau de gauche est la table de classification, et les emplois sur la table de droite sont la table des postes. Je souhaite compter le nombre de postes dans chaque catégorie.
Mais il y a un problème avec les résultats. Si une catégorie n'existe pas dans le champ catégorie de la table des emplois, c'est-à-dire que personne n'a ajouté de poste sous cette catégorie, alors cette catégorie ne sera pas affichée dans la requête. résultats.
Mais il va de soi que s'il y a une jointure à gauche, même s'il n'y a pas de données correspondantes dans le tableau de droite, les champs du tableau de gauche devraient quand même être affichés

高洛峰高洛峰2762 Il y a quelques jours472

répondre à tous(2)je répondrai

  • 怪我咯

    怪我咯2017-06-05 11:10:00

    Bien sûr, le tableau de droite dans lequel vous avez écrit la condition Where est introuvable. Lorsque le tableau de droite est vide, le champ de condition est également vide et il est filtré selon votre condition Where.

    répondre
    0
  • 漂亮男人

    漂亮男人2017-06-05 11:10:00

    J'ai également rencontré cette situation. Elle a été filtrée par votre condition de localisation. La solution est d'ajouter les conditions écrites dans Where to On !
    où doit filtrer l'ensemble de résultats après avoir connecté les tables, mais si la condition est fausse, les données du tableau de gauche seront renvoyées et le tableau de droite sera vide

    répondre
    0
  • Annulerrépondre