在本文中,我们将为您详细介绍mysql操作符的相关知识,并且为您解答关于MySQL操作符的疑问,此外,我们还会提供一些关于3Java操作符、C#学习备忘录_使用变量、操作符、表达式、C++new和de
在本文中,我们将为您详细介绍mysql 操作符的相关知识,并且为您解答关于MySQL操作符的疑问,此外,我们还会提供一些关于3 Java 操作符、C#学习备忘录_使用变量、操作符、表达式、C++ new 和 delete 操作符、c++ 操作符<<重载的有用信息。
本文目录一览:mysql 操作符(MySQL操作符)
1 mysql 操作符
下图表示所有操作符的执行优先级,从高到低,同一行中的操作符优先级相同,相同优先级的情况则从左到右执行
如果想改变优先级执行顺序则可以使用括号()
1.1 对比操作符
对比操作符的执行结果为true,false,null 三种
Between A and B 代表检查值是否在A和B之间
Coalesce()代表返回第一个非Null的值,如果没有非null值,则返回NULL
=代表相等操作符
>代表大于操作符
>=代表大于等于操作符
Greatest()代表返回最大的值
In()代表检查值是否在一系列的值之中
Interval()代表返回比第一个参数小的参数的位置
is/is not代表检查值是否与布尔值相同/不同
Is not null代表检查值是否是非NULL
Is null代表检查值是否是NULL
Isnull()代表检查参数是NULL
Least()代表返回最小的参数 如果其中有值为null,则返回null
<代表小于操作符
<=代表小于等于操作符
Like代表字符匹配
Not between A and B代表检查值是否不在A和B的范围之内
!=/<>代表不等于操作符
Not in()代表检查值是否不在一系列值的当中
Not like代表检查值是否不匹配
Strcmp()对比两个字符串
我只对某些列子做了举例,很多都是类似一样的用法没有再写
=(等号)对比操作符
1表示true ,0表示false
<>/!= 不等于对比操作符
is 操作符
Expr between min and max对比操作符相当于min <= expr AND expr <= max
COALESCE(value,…)对比操作符
返回第一个非NULL的值,如果没有非null值,则返回NULL
GREATEST(value1,value2,…)
返回其中最大的值
expr IN (value,…)对比操作符
当expr值能在values中找到,则返回1,否则返回0
Isnull(expr)操作符
如果expr是null,则返回1,否则返回0
LEAST(value1,value2,…)
返回最小值,如果其中有值为null,则返回null
1.2 逻辑操作符
AND,&& 逻辑与
NOT,! 否
||,OR 逻辑或
XOR 异或 真真为假 假假为假 真假为真 假真为真
NOT, !逻辑操作符代表非操作
AND,&& 逻辑与操作符
XOR逻辑异或操作符
1.3 分配操作符
= =操作符在两种情况下会被认为是赋值操作,其他情况下会认
为是对比操作符 a.在set语句中,=操作符会被认为是赋值操作 b.在update语句中的set子句中,=操作符会被认为是赋值操作
:= 分配一个值
3 Java 操作符
Java SE 第四讲:1. 当有若干个变量参与运算时,结果类型取决于这些变量中表示范围最大的那个变量类型。比如,参与运算的变量中,有整型 int,有双精度浮点型 double,有短整型 short,那么最后的结果类型就是 double。
2. int a = 1;
int b = 2;
double c = (double)a / b;
上面的代码中,a 与 b 都是整型,但是通过 (double) a 这种转换将 a 转换为一个匿名的变量,该变量的类型是 double,但是要注意:a 本身依旧是 int 类型,而不是 double 类型,这样,(double) a /b 就是 double 类型除以 int 类型,结果自然是 double 类型。
3. 取模运算符:使用 % 表示。
int a = 5;
int b = 3;
int c = a % b;
上面代码的运行结果是 2,因为 5 除以 3 结果是 1 余 2。
取模的规律:取模的结果符号永远与被除数的符号相同
int a = 5;
int b = -3;
int c = a % b;
被除数是 5,那么取模的结果是 2
int a = -5;
int b = 3;
int c = a % b;
被除数是 - 5,那么取模的结果是 - 2。
Java SE 第五讲:
1. 关系运算符:大于(>)、小于(<)、等于(==)、不等于(!=)、大于等于(>=)、小于等于(<=),关系运算的结果是个 boolean 值。
2. 逻辑运算符:重点讲解两个,逻辑运算符本身也返回一个 boolean 值。
1) 逻辑与:使用 && 表示,逻辑与是个双目运算符(即有两个操作数的运算符),只有当两个操作数都为真的时候,结果才为真;其余情况结果均为假。逻辑与表示的并且的意思。
2) 逻辑或:使用 || 表示,逻辑或也是个双目运算符,只有当两个操作数都为假的时候,结果才为假;其余情况结果均为真。逻辑或表示或者的意思。
3. 关于逻辑运算符的短路特性。
1) 逻辑与:如果第一个操作数为 false,那么结果肯定就是 false,所以在这种情况下,将不会执行逻辑与后面的运算了,即发生了短路。
2) 逻辑或:如果第一个操作数为 true,那么结果肯定就是 true,所在在这种情况下,将不会执行逻辑或后面的运算了,即发生了短路。
4. 关于变量的自增与自减运算。
1) 关于 int b = a++,作用是将 a 的值先赋给 b,然后再让 a 自增 1.
2) 关于 int b = ++a,作用是将 a 的值先自增 1,然后将自增后的结果赋给 b。
C#学习备忘录_使用变量、操作符、表达式
C#中对于变量的命名遵循与iOS开发中相同的camelCase命名法,不使用C/C++常用的匈牙利记号法,尽量不以_开头
C#中,基元数据类型较C++增加了decimal类型,用来表示货币值,拥有比double更高的精度和更小的范围
C#中使用未初始化的变量会导致编译错误而不是在运行时出错,即所谓明确赋值规则
在将字面值赋值给float型变量时,要在字面值后加F,默认会当作double处理,从而出错,例如float floatValue=0.51f;
同理,在将字面值赋值给decimal型变量时,要在字面值后加M,默认会当作double处理,从而出错,例如decimal decimalValue=0.51m;
.NET Framework的每个数据类型均有ToString方法转化为字符串
Int32.Parse方法可将字符串存储的值转化为整数值
C#支持对float、double数据类型进行取模操作(C/C++均不支持),例如:7.0%2.4=2.2;
除0外任意数除以0的结果为Infinity,0/0的结果为Nan(Not a Number)
C#支持类型推断,可使用var关键词声明隐式类型变量,例如var str="Hello World!"; var声明的变量必须在定义时就赋初始值,否则无法判断变量类型
C++ new 和 delete 操作符
在 C 语言中,动态分配内存用 malloc () 函数,释放内存用 free () 函数。如下所示:
int *p = (int*) malloc( sizeof(int) * 10 ); //分配10个int型的内存空间
free(p); //释放内存
在 C++ 中,这两个函数仍然可以使用,但是 C++ 又新增了两个关键字,new 和 delete:new 用来动态分配内存,delete 用来释放内存。
用 new 和 delete 分配内存更加简单:
int *p = new int; //分配1个int型的内存空间
delete p; //释放内存
new 操作符会根据后面的数据类型来推断所需空间的大小。
如果希望分配一组连续的数据,可以使用 new []:
int *p = new int[10]; //分配10个int型的内存空间
delete[] p;
用 new [] 分配的内存需要用 delete [] 释放,它们是一一对应的。
和 malloc () 一样,new 也是在堆区分配内存,必须手动释放,否则只能等到程序运行结束由操作系统回收。为了避免内存泄露,通常 new 和 delete、new [] 和 delete [] 操作符应该成对出现,并且不要和 C 语言中 malloc ()、free () 一起混用。
在 C++ 中,建议使用 new 和 delete 来管理内存,它们可以使用 C++ 的一些新特性,最明显的是可以自动调用构造函数和析构函数等。
c++ 操作符<<重载
CheckoutRecord.h
/*
* CheckoutRecord.h
*
* Created on: 2014-12-7
* Author: blade
*/
#ifndef CHECKOUTRECORD_H_
#define CHECKOUTRECORD_H_
#include <iostream>
using namespace std;
class CheckoutRecord {
public:
CheckoutRecord();
CheckoutRecord(string title,double bookId);
virtual ~CheckoutRecord();
friend ostream& operator<<(ostream&, const CheckoutRecord&);
private:
double bookId;
string title;
pair<string, string> borrower;
};
#endif /* CHECKOUTRECORD_H_ */
CheckoutRecord.cpp
/*
* CheckoutRecord.cpp
*
* Created on: 2014-12-7
* Author: blade
*/
#include "CheckoutRecord.h"
using namespace std;
CheckoutRecord::CheckoutRecord() {
// TODO Auto-generated constructor stub
}
CheckoutRecord::CheckoutRecord(string title,double bookId):title("ddd"),bookId(33){
this->title = title;
this->bookId = bookId;
}
CheckoutRecord::~CheckoutRecord() {
// TODO Auto-generated destructor stub
}
ostream& operator<<(ostream& out, const CheckoutRecord& cr){
out << cr.bookId << "\t" << cr.title <<
"\t" << cr.borrower.first <<
"\t" << cr.borrower.second ;
return out;
}
main.cc
/*
* main.cc
*
* Created on: 2014-12-7
* Author: blade
*/
#include <iostream>
#include "example/CheckoutRecord.h"
using namespace std;
int main(){
pair<string,string> borrower;
CheckoutRecord cr("ddd",33);
cout << cr;
}
说明:c++primer4 指导原则:
赋值(=)、下标([])、调用(())和成员访问箭头等操作符必须定义为成员,将这些操作符定义为非成员变量函数将在编译时标记为错误。
像赋值一样,复合赋值操作符通常应该定义为类成员,与赋值不同的是,不一定非得这样做,如果定义非成员复合赋值操作符,不会出现编译错误。
改变对象状态与给定类型紧密联系的其他一些操作符,如自增、自减和解引用,通常应定义为类成员。
对称的操作符,如算术操作符,相等操作符、关系操作符和位操作符符,最好定义为普通非成员函数。
本文章参考了:<<c++ primer>>第4版
我们今天的关于mysql 操作符和MySQL操作符的分享就到这里,谢谢您的阅读,如果想了解更多关于3 Java 操作符、C#学习备忘录_使用变量、操作符、表达式、C++ new 和 delete 操作符、c++ 操作符<<重载的相关信息,可以在本站进行搜索。
本文标签: