sleep()
理解sleep()的关键反而在于理解where
where可以想成是一个循环,为真就选择,为假就不选
设bjb表:
xh | xm |
---|---|
43 | zkaq.cn |
44 | 0x7a6b61712e636e |
998 | admin |
999 | admin |
1000 | aaa |
根据上表执行以下sql语句
select * from bjb where xm='admin' or sleep(1);// 3.04 sec
or是有“短路”的,即or左边的表达式若为真,则不会再看后面的,也就是说这里若xm='admin’为真,后面的sleep()是不会执行的。
其中xm='admin’有三次假,所以sleep(1)执行了三次
注:sleep()返回值为0