MySQL官方手册翻译

数据库的数据:

选择特定的行:

SELECT * FROM pet  WHERE name = 'Fluffy';

字符大小写通常没有影响,所以你可以使用name="fluffy' 或者“FLUFFY'.,结果是一样的。

你也可以使用其他任意一栏的条件(上面用的是name,这里可以换成birth,or其他任何有记录的元素)

SELECT * FROM pet WHERE birth >= '1995-01-01';

你也可以使用不同条件的组合形式,如定位雄性蛇(信息并列)

SELECT *FROM pet WHERE species = 'snake' AND sex = 'm';

(AND 可小写)

或者(多种选择)

SELECT * FORM pet WHERE species = 'snake' OR species = 'cat';

AND 和OR也可以混用,AND比OR具有更高的优先级,如果使用两者操作,需要分析清楚条件是如何组合的。

例如

:

选择特定的列:

使用关键字WHERE 组合行和列

Sorting Rows(行排序)

你的数据可能是没有什么顺序。如果数据以某种方式顺序存在,对于某个记录的查找也很方便

需要用到ORDER BY (order by ) 

排序默认为升序(第一个最小),如果要改成降序,添加DESC关键词。

你可以将不同的列作为排序的依据,上面将生日作为排序的依据,现在可添加动物种类来排序(字母顺序)

日期计算:

MySQL提供一些可以用来计算日期的函数,例如计算年龄或者提取部分日期。

例如,要计算宠物的年龄是多少,可以使用TIMESTAMPDIFF()函数,参数中两个日期的差值,得出年龄age.

结果是正确的,想想如果结果以某种顺序排序,是否更容易观察,可以使用前面提到的ORDER BY(这里假设选用name排序)

当然。也可以选用计算出来的age 来排序,只需要将上面name改为age即可

我们来查看一下数据库里宠物的信息

其中属于一只叫Claws的cat是在2100-09-04年死的,出生日期是1994-09-04,这么一算,它有106岁。他的death栏比是NULL,所以计算需要做点改动

如果你想知道下个月是不是哪个宠物过生日,这样的计算,年和日相对来说就是无关的

我们要做的就是从日期中提取月份,MySQL提供一些函数,如YEAR(),MONTH(),DAYOFMONTH()

这里最合适的就是MONTH()

如果现在是8月份,你很想知道9月份是否有宠物过生日

结果是以0或1表示的,1就表明Claws是9月份过生日。如果想看得更详细,可以这样做

如果现在月份是12月份,情况可能有点复杂,你不能直接在12上加1,因为没有13月份。你需要找到的是1月份。

你可以这样做

也可以使用函数MOD(),当月份为12时,使month=0 然后加1

MONTH()函数返回一个介于1~12之间的数。MOD(something,12) 返回一个0~11之间的数。

如果计算用到了不和法的日期,会导致计算失败并且产生警告

这个计算时正确的。当使用错误日期的时候:

----------------------------------------------------------------------------------------------------------------------------------------

人最惨的,并不是莫名其妙的被人给领上了一条迷路,而是当你背上孤独拿上剑,决定要马不停蹄,一意孤行的时候,突然冒出来一个人,把你抱紧,说,少年,我想和你分享这漫长的一生。你一激动,把剑给扔了,把马烤了,吃完一回头,人没了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值