Consultez la formation SEO spéciale Wordpress
par WebRankInfo / Ranking Metrics

Messages: 520

Enregistré le: 30 Juil 2014

Message le Mer Mai 10, 2017 18:28

Bonjour,

J'ai une requête sql qui ne retourne aucun résultat avec '1' en paramètre, tandis qu'elle retourne des résultats (avec d'autres tuples) si je passe 'null' en paramètre.

Je ne vois pas d'erreur de syntaxe dans ma requête avec 1 en paramètre. Donc je me dis que le problème pourrait venir du champ (bigint(20) )

Code: Tout sélectionner
SELECT
post_id,
post_title
FROM
dot_post
WHERE
perso_ajout='0'
AND
cat_id!='1'
ORDER BY
post_id desc


Avez-vous une idée qui puisse expliquer cela ?

Merci d'avance
Haut
11 Réponses
Messages: 8448

Enregistré le: 14 Mai 2003

Message le Mer Mai 10, 2017 18:37

NULL n'est pas une valeur, c'est l’absence de valeur.
Il faut mettre:
Code: Tout sélectionner
cat_id IS NOT NULL
Haut
Messages: 520

Enregistré le: 30 Juil 2014

Message le Mer Mai 10, 2017 18:42

Salut Spout,

Ce que tu proposes est à prendre en note, mais ça ne me convient pas.

J'ai essayé avec !='null', juste pour voir le résultat de ma requête.
Et ça fonctionne.
Sauf que je ne veux pas les champs dont la valeur est nulle, c'était juste pour le test.

Ce que je veux, ce sont les champs avec une valeur différente de 1, donc !=1 .

Mais y'a rien à faire, avec la requête ci-dessus, rien ne s'affiche.

:idea: Ou alors, cela voudrait dire que la requête ne peut pas trouver des résultats avec une valeur nulle, si on lui demande de chercher ceux qui ont une valeur différente de 1, sachant que pour l'heure je n'ai dans ma table que des tuples avec pour valeur 1 ou nulle ? :idea:

Je vais faire un test.
Haut
Messages: 520

Enregistré le: 30 Juil 2014

Message le Mer Mai 10, 2017 18:45

Ah bah c'était ça dis donc.

T'as débloqué le truc rien que par ta présence magique, Spout !

Ceci dit, ça vaut le coup de détailler : pourquoi "null" n'est-il pas pris en compte, lorsqu'on demande les champs avec une valeur différente de 1 ? L'absence de valeur n'est-elle pas une valeur ?
Haut
Messages: 8448

Enregistré le: 14 Mai 2003

Message le Mer Mai 10, 2017 18:50

Alorsladaccord a écrit:J'ai essayé avec !='null', juste pour voir le résultat de ma requête.
Et ça fonctionne.

Là tu testes différent du string 'null'.

http://stackoverflow.com/questions/16186674/mysql-syntax-not-evaluatin ... ce-of-null
http://stackoverflow.com/questions/9608639/mysql-comparison-with-null-value
[...]
Haut
Messages: 520

Enregistré le: 30 Juil 2014

Message le Jeu Mai 11, 2017 13:33

Tu devrais ouvrir un annuaire informatique, spout.
Haut
Messages: 12199

Enregistré le: 23 Nov 2005

Message le Jeu Mai 11, 2017 13:36

Alorsladaccord a écrit:Tu devrais ouvrir un annuaire informatique, spout.


Ça s'appelle stackoverflow.
Haut
Messages: 8448

Enregistré le: 14 Mai 2003

Message le Jeu Mai 11, 2017 13:36

Il y a déjà Google => Stack Overflow pr trouver tout ça ;)

Image

Edit: grillé
Haut
Messages: 520

Enregistré le: 30 Juil 2014

Message le Jeu Mai 11, 2017 14:51

Stack Overflow is the largest online community for programmers to learn, share their knowledge, and advance their careers.


Et qu'en est-il de Développez.net ? Je m'étais laissé dire que ce site francophone nous est envié des anglo-saxons.
Haut
Messages: 525

Enregistré le: 2 Juil 2015

Message le Jeu Mai 11, 2017 15:15

Je n'ai jamais trouvé mieux que Stack perso.
Haut
Messages: 520

Enregistré le: 30 Juil 2014

Message le Jeu Mai 11, 2017 17:41

Ils utilisent quel script ?
Haut
Messages: 140

Enregistré le: 17 Oct 2009

Message le Ven Mai 12, 2017 12:16

Alorsladaccord a écrit:Et qu'en est-il de Développez.net ? Je m'étais laissé dire que ce site francophone nous est envié des anglo-saxons.

Ah oui ? Les même qui nous envient Qwant peut-être ? :lol:
Haut

Formation recommandée sur ce thème :

Formation SEO spéciale Wordpress : apprenez à optimiser le référencement naturel d'un site fait avec Wordpress... Formation Ranking Metrics animée par un expert SEO / Wordpress.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.