Quel opérateur: /
ou *
aura la plus haute priorité dans MySQL
?priorité d'opérateur dans mysql
Répondre
Comme la plupart des langages de programmation, MySQL effectue /
et *
(ainsi que DIV,% et MOD) de gauche à droite, dans l'ordre où ils se produisent. Par exemple:
1/2 * 3/4/5 * 6
est équivalent à
((((1/2) * 3)/4)/5) * 6
Voir http://dev.mysql.com/doc/refman/5.0/en/operator-precedence.html pour une liste complète de priorité des opérateurs.
/ou * aura la plus haute priorité dans mysql.
Ils sont de même priorité.
Ils sont les mêmes voir http://dev.mysql.com/doc/refman/5.0/en/operator-precedence.html
Ils ont la même précédence, * est listé en premier, et MySQL évaluera de gauche à droite.
http://dev.mysql.com/doc/refman/5.0/en/operator-precedence.html
Mon conseil est d'usage entre parenthèses() pour rendre les choses claires.
Il est toujours préférable de vérifier, et qui peut être fait très facilement avec MySQL:
mysql> SELECT 2*3/2, 2/3*2, 2*(3/2) ;
+--------+--------+---------+
| 2*3/2 | 2/3*2 | 2*(3/2) |
+--------+--------+---------+
| 3.0000 | 1.3333 | 3.0000 |
+--------+--------+---------+
1 row in set (0.00 sec)
Les opérateurs sont hiérarchisées comme la liste de la plus haute priorité au plus bas:
- BINARY, COLLATE
- NOT (négation logique),! (Négation logique)
- .- (moins unaire), ~ (unaire inversion de bits)
- ^(OU exclusif comparaison au niveau du bit)
- . * (Multiplication),/(division),% (modulo)
- .- (soustraction), + (addition)
- < < (décalage de gauche au niveau du bit), >> (décalage droit au niveau du bit)
- & (bitwise ET)
- | (Opérateur OR)
- opérateurs de comparaison tels que <>
- ENTRE, PAS ENTRE
- ET & & (conjuction - plus logique)
- XOR (logique OU exclusif comparaison)
- OU || (Disjonction - soit/ou comparaison)
Comme par liste, la comparaison opérateur BINARY a priorité sur la BETWEEN et les opérateurs de esperluette (&).Les opérateurs sur la même ligne ci-dessus ont le même niveau de priorité et sont évalués dans l'ordre d'utilisation.
Je supprimerais cela rapidement, ChrisAD. Je pense que c'est faux. – paxdiablo
oui c'était faux Pax =) Dans MySQL son évalué dans l'ordre d'utilisation quand ils sont au même niveau. Je lisais sur Transact-SQL ici: http://msdn.microsoft.com/en-us/library/ms190276.aspx ce qui n'est pas la même chose pour MySQL =) Merci PAx –
La réponse est: il ne devrait pas d'importance. Si vous avez une expression indiquant que vous n'êtes pas sûr de l'évaluation, utilisez parens. Ils sont gratuits.
- 1. priorité de ligne MySQL
- 2. Priorité des nœuds Erlang
- 3. Priorité de Setter remplaçant dans WPF?
- 4. Tri sélectif dans MySQL?
- 5. Faisant une priorité basse exe
- 6. priorité de conversion en C++
- 7. Modifier la priorité du fil d'amélioration dans Windows
- 8. Quelle est la priorité sur les entrées NoStepInto dans VS2008?
- 9. Priorité des opérateurs C# et VB.NET
- 10. Ordre de priorité avec des méthodes?
- 11. Fonction OpenMP manquante: priorité de thread
- 12. Considérations sur la priorité de planification
- 13. Raison de la priorité des propriétés CSS?
- 14. fusionner 2 séquences Linq en une seule, avec priorité
- 15. Priorité de thread de l'objet .work arrière-plan
- 16. ASP.NET MVC 2 et la coutume httpModule priorité
- 17. perfomSelector: withObject: afterDelay: puis-je demander une priorité basse?
- 18. Manière sûre de changer la priorité d'un NSOperation
- 19. opérateur Prolog priorité et les règles correspondant à
- 20. Comment augmenter la priorité I/O d'un processus?
- 21. Quelle est la priorité de l'opérateur C# null-coalescing (??)?
- 22. Quelle est la valeur de la priorité du thread principal?
- 23. C opérateur de décalage de priorité de bizarrerie
- 24. Changer la priorité du processus actuel en C
- 25. Modification de la priorité de processus en Python, multiplate-forme
- 26. Exécuter plusieurs instances mysql dans mysql
- 27. Existe-t-il une option pour configurer une priorité dans memcached? (Similaire à Expiry)
- 28. La priorité de l'opérateur est-elle importante pour && et == dans javascrtipt?
- 29. La définition d'une priorité de thread dans un service n'a aucun effet.
- 30. Quelle est la priorité de plusieurs instructions JOIN dans sqlite? Les
Est-ce que le downvoter peut expliquer son raisonnement? – Artelius