`
san_yun
  • 浏览: 2654726 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

运算符的优先级

 
阅读更多

很久没有去深究运算符的优先级了,今天写SQL解析思考了一下。

下面这条SQL真正的执行顺序是什么?

select * from taobao_category where type=1 or id=801 and type=3 and type=4

 

改成python脚本:

def test(type,id):
    print type==1 or id==801 and id==802 and id==803

 测试结果是True

 

基本所有的语言的优先级都是 not>and>or,

所以上面那段python表达式实际是:  (type==1) or (id==801 and id==802 and id==803),sql也就是:

select * from taobao_category where (type=1) or (id=801 and type=3 and type=4)
mysql> select * from taobao_category where type=0 and type=1 or id=324 and id =23 or id=830;
+-----+----------+------+-----------+-----------------+------+------+--------+
| id  | cid      | type | parent_id | name            | url  | des  | status |
+-----+----------+------+-----------+-----------------+------+------+--------+
| 830 | 50024129 |    0 |      1402 | - | NULL | NULL |   NULL |
+-----+----------+------+-----------+-----------------+------+------+--------+
1 row in set (0.00 sec)

 

 

 

分享到:
评论

相关推荐

    Verilog HDL 运算符 优先级

    Verilog HDL 运算符优先级详解 Verilog HDL 是一种基于事件驱动的硬件描述语言,用于设计和验证数字电路。Verilog HDL 运算符优先级是指在 Verilog HDL 中各种运算符的执行顺序和优先级,了解运算符优先级对编写...

    C语言各运算符优先级及函数大全

    C语言各运算符优先级及函数大全 C语言中的运算符优先级是程序员必须掌握的基础知识。了解运算符的优先级可以帮助程序员编写正确、简洁的代码。下面将详细介绍C语言中的运算符优先级和相关知识点。 一、数组下标...

    C++运算符优先级表

    C++运算符优先级表 C++ 运算符优先级表是一份非常重要的参考资源,对于C++开发者来说是必不可少的。本文将详细介绍C++运算符优先级表,并对每个运算符进行解释。 一、括号运算符 括号运算符的优先级最高,包括...

    C语言运算符优先级-详细列表

    C语言中的运算符优先级和特殊符号使用是编程中非常重要的部分,正确理解它们的含义和规则能够帮助编程人员写出符合预期的代码,避免一些常见的错误。以下是针对C语言运算符优先级的详细列表及特殊符号的使用说明。 ...

    C#运算符优先级解释

    在深入探讨C#运算符的优先级之前,我们先来明确一下什么是运算符以及优先级在编程中的作用。...因此,在学习和应用运算符优先级时,始终保持对代码质量和用户体验的关注,将使你成为一个更加优秀的程序员。

    C语言运算符优先级.docx

    ### C语言运算符优先级详解 #### 概述 在C语言编程中,理解运算符的优先级至关重要,因为这直接影响着程序的执行结果。不同的运算符根据其优先级顺序来决定表达式的计算顺序。本篇文章将详细介绍C语言中的运算符...

    运算符优先级总结(C++)

    ### 运算符优先级总结(C++) 在C++编程语言中,了解运算符的优先级对于编写高效且无误的代码至关重要。本篇文章基于提供的文件信息进行深入解析,帮助读者更好地掌握C++中的运算符优先级及其结合性。 #### 一、...

    C++ 运算符优先级列表

    ### C++运算符优先级详解 #### 一、引言 在C++编程语言中,了解运算符的优先级对于正确地构造表达式至关重要。不同的运算符根据其优先级顺序来决定表达式的计算顺序,这直接影响到程序的执行结果。本篇文章将详细...

    C语言运算符优先级表.pdf

    C语言运算符优先级表 C语言运算符优先级表是指在C语言中所有运算符的优先级顺序和结合方向的总结。正确理解和掌握C语言运算符的优先级和结合方向对于编写正确和高效的C语言程序非常重要。 以下是C语言运算符的...

    C语言运算符优先级.xls

    C语言运算符优先级

    C语言运算符优先级.pdf

    了解C语言的运算符优先级对于编写清晰、正确的代码至关重要。没有正确地理解和应用优先级,可能会导致程序的逻辑错误或性能问题。因此,在编程时,应当养成使用括号明确优先级的习惯,或者根据已经掌握的优先级表来...

    java运算符优先级表

    非常详细的java运算符优先级表,帮助记住优先级顺序

    C语言运算符优先级和结合性表

    ### C语言运算符优先级和结合性 在C语言中,理解运算符的优先级和结合性对于正确地编写和解读代码至关重要。本篇文章将基于提供的C语言运算符优先级和结合性表进行详细的解析。 #### 一、运算符优先级 运算符...

    C++实战篇:运算符优先级

    C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战篇:运算符优先级 C++实战...

    Java综合程序设计——计算器(实现运算符优先级的四则混合运算)

    在本项目中,"Java综合程序设计——计算器(实现运算符优先级的四则混合运算)"是一个典型的软件开发任务,旨在实现一个功能丰富的计算器,包括基础的四则运算以及更复杂的数学操作如对数和平方根。这个计算器的关键...

    C语言运算符优先级和口诀.doc

    C语言中的运算符优先级是编程时非常关键的知识点,它决定了表达式中不同运算的执行顺序。了解这些规则能帮助我们写出更清晰、更准确的代码。下面将详细解释C语言运算符的优先级和结合性,并提供相应的记忆口诀。 ...

    巧记C语言运算符优先级

    "巧记C语言运算符优先级" C语言的运算符优先级关系复杂难记,结合编程和教学实践,给出了C语言运算符优先级的巧记规则,辅以实例加以说明。下面将详细介绍C语言的运算符优先级关系和巧记规则。 C语言共有多达45个...

    C语言运算符优先级C语言运算符优先级.doc

    C语言运算符优先级C语言运算符优先级

    运算符优先级图表

    运算符优先级图表

Global site tag (gtag.js) - Google Analytics