Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysql在角色权限上是独占的吗?_Mysql_Sql_Between - Fatal编程技术网

mysql在角色权限上是独占的吗?

mysql在角色权限上是独占的吗?,mysql,sql,between,Mysql,Sql,Between,考虑一下这个名为easy\u drinks的表 +------------------+ | drink_name | +------------------+ | Kiss on the Lips | | Hot Gold | | Lone Tree | | Greyhound | | Indian Summer | | Bull Frog | | Soda and It | | Blackthorn

考虑一下这个名为
easy\u drinks
的表

+------------------+
| drink_name       |
+------------------+
| Kiss on the Lips |
| Hot Gold         |
| Lone Tree        |
| Greyhound        |
| Indian Summer    |
| Bull Frog        |
| Soda and It      |
| Blackthorn       |
| Blue Moon        |
| Oh My Gosh       |
| Lime Fizz        |
+------------------+
这样的疑问,

 select drink_name from easy_drinks where drink_name BETWEEN 'G' and 'O';
导致

+------------------+
| drink_name       |
+------------------+
| Kiss on the Lips |
| Hot Gold         |
| Lone Tree        |
| Greyhound        |
| Indian Summer    |
| Lime Fizz        |
+------------------+
结果中不包括以
O
开头的饮料名称。但是根据手册

expr在最小值和最大值之间

如果expr大于或等于min且expr小于或等于 到max,在返回1之间,否则返回0。 如果expr大于或等于最小值,且expr小于或等于最大值,则BEVER>返回1,否则返回0

为什么查询会给出这样的结果

我已经解释了时间戳和日期的行为。发生这种情况的原因是什么?

tl;博士 不要在字符串中使用BETWEEN

其中饮料名称>='G'和饮料名称>'p'

为什么? O有效地扩展为尾随空格以匹配列。所以

'O                  '
在之前

'Oh My Gosh'
所以你需要

where drink_name BETWEEN 'G' and 'OZ';
如果你喝了一种叫做“Ozymandias”的饮料,那么这就行不通了。因此:

where drink_name BETWEEN 'G' and 'OZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ';
但是,我们能安全地假设没有叫做
p
的饮料和许多空格吗?
这是不可理解的

select drink_name from easy_drinks
where drink_name BETWEEN 'G' and 'P';
显而易见的选择可能是使用

但这将防止在饮料名称上使用任何索引。

tl;博士 不要在字符串中使用BETWEEN

其中饮料名称>='G'和饮料名称>'p'

为什么? O有效地扩展为尾随空格以匹配列。所以

'O                  '
在之前

'Oh My Gosh'
所以你需要

where drink_name BETWEEN 'G' and 'OZ';
如果你喝了一种叫做“Ozymandias”的饮料,那么这就行不通了。因此:

where drink_name BETWEEN 'G' and 'OZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ';
但是,我们能安全地假设没有叫做
p
的饮料和许多空格吗?
这是不可理解的

select drink_name from easy_drinks
where drink_name BETWEEN 'G' and 'P';
显而易见的选择可能是使用

但这将阻止在饮料名称上使用任何索引。

以下是:

编辑:

我完全忘记了
LEFT(drink\u name,1)
,它是
子字符串(drink\u name,1,1)
的一个方便快捷的工具,这里有:

编辑:


我完全忘记了
LEFT(drink\u name,1)
,它是
子字符串(drink\u name,1,1)的一个方便的shorcut

还有
其中的drink_name>='G'和drink_name
@ypercube:本来打算这么说,但被冲昏头脑了:)我不确定的是区分大小写对这些变化的影响。这将是一个排序问题。我几乎总是不区分大小写。我不确定区分大小写如何影响这些变化。这将是一个排序问题。我工作时几乎总是不区分大小写,但ft也表示“不使用任何索引”。LEFT也表示“不使用任何索引”。