找到 4379 篇文章 关于 MySQL

我们如何更改解析器用于解析内置函数名称的默认规则?

Rishi Raj
更新于 2020年6月22日 05:52:04

88 次浏览

解析器用于解析内置函数名称的默认规则可以通过启用 IGNORE_SPACE SQL 模式来更改。启用此模式后,解析器会放宽函数名称与其后面的括号之间不允许有空格的要求。例如,启用 IGNORE_SPACE SQL 模式后,以下两个函数调用都是合法的:Select SUM(Salary) from employee; Select SUM (Salary) from employee; 但是,在这种情况下,解析器会将函数名称视为保留字。这意味着函数名称后面的空格不再表示标识符。

如何在存储过程中使用 MySQL IF 语句?

Ramu Prasad
更新于 2020年6月22日 05:51:19

427 次浏览

MySQL IF 语句在存储过程中实现了一个基本的条件结构。其语法如下:IF expression THEN Statements; END IF; 它必须以分号结尾。为了演示如何在 MySQL 存储过程中使用 IF 语句,我们将创建以下存储过程,该过程基于名为“student_info”表的如下所示的值:mysql> Select * from student_info; +------+---------+------------+------------+ | id   | Name    | Address    | Subject    | +------+---------+------------+------------+ | 101  | YashPal | Amritsar   | History    | | 105  | Gaurav  | Jaipur     | ... 阅读更多

解析器用于解析内置函数名称的默认规则是什么?

Monica Mona
更新于 2020年6月22日 05:53:23

115 次浏览

实际上,当解析器遇到一个内置函数名称的单词时,它必须确定该名称是表示函数调用,还是表示对标识符(例如表或列名)的非表达式引用。考虑以下查询:1. Select sum(salary) from employee; 2. Create table sum (i int); 在第一个查询中,SUM 是对函数调用的引用,在第二个查询中,它是对表名的引用。解析器遵循以下规则来区分其名称是在函数调用中使用还是在非引用上下文中作为标识符使用:规则 1 ... 阅读更多

如果 MySQL SUBSTRING_INDEX() 函数的参数“count”的值大于分隔符的总出现次数会发生什么?

Ayyan
更新于 2020年6月22日 05:54:07

142 次浏览

如果参数“count”的值大于分隔符的总出现次数,MySQL SUBSTRING_INDEX() 函数将返回与输出相同的字符串。可以使用以下示例进行演示:mysql> Select SUBSTRING_INDEX('My Name is Ram','a',3); +-----------------------------------------+ | SUBSTRING_INDEX('My Name is Ram','a',3) | +-----------------------------------------+ | My Name is Ram                          | +-----------------------------------------+ 1 row in set (0.00 sec) 以上查询返回相同的字符串,因为 3 大于作为参数提供的分隔符“a”的总出现次数。字符串中只有两个“a”。

如何在 MySQL 存储过程中使用用户变量?

usharani
更新于 2020年6月22日 05:54:47

202 次浏览

在 MySQL 存储过程中,用户变量用一个与号“@”引用,该与号位于用户变量名称之前。例如,@A、@B 等是用户变量。为了演示这一点,我们将创建以下过程:mysql> DELIMITER // ; mysql> CREATE PROCEDURE Proc_Uservariables()    -> BEGIN    -> SET @A = 100;    -> SET @B = 500;    -> SELECT @A,@B,@A+@B;    -> END // Query OK, 0 rows affected (0.00 sec) mysql> Delimiter ; // mysql> CALL Proc_Uservariables(); +------+------+-------+ | @A   | @B   | @A+@B | +------+------+-------+ |  100 |  500 |   600 | +------+------+-------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)

我们如何将位值作为数字赋值给用户变量?

Chandu yadav
更新于 2020年6月22日 05:35:55

311 次浏览

众所周知,赋值给用户变量的位值的默认类型是二进制字符串,但我们也可以使用以下两种方法将位值赋值给数字:使用 CAST() 函数使用 CAST(… AS UNSIGNED),可以将位值赋值为数字。以下示例将对此进行说明:mysql> SET @abc = CAST(0b1000011 AS UNSIGNED); Query OK, 0 rows affected (0.00 sec) mysql> Select @abc; +------+ | @abc | +------+ | 67   | +------+ 1 row in set (0.00 sec) 通过添加 0(+0) 位值可以赋值为... 阅读更多

赋值给用户变量的位值的默认类型是什么?

Arushi
更新于 2020年6月22日 05:39:42

113 次浏览

默认情况下,赋值给用户变量的位值是二进制字符串。可以通过将位值赋值给用户变量,然后按如下方式检索它们来进行说明:mysql> SET @abc = 0b1000011; Query OK, 0 rows affected (0.00 sec) mysql> Select @abc; +------+ | @abc | +------+ | C    | +------+ 1 row in set (0.00 sec) 以上结果集显示,赋值给用户变量的位值的默认类型是二进制字符串。

我们如何以可打印形式显示 MySQL 位值?

Anjana
更新于 2020年6月22日 05:39:10

66 次浏览

实际上,位值作为二进制值返回,但我们也可以在以下帮助下以可打印形式显示它们:通过添加 0 我们可以通过向位值添加 0 来以可打印形式显示它们。来自 bit_testing 表的以下示例可以用来理解它:mysql> Select bittest+0 from bit_testing; +-----------+ | bittest+0 | +-----------+ |       170 | |         5 | |         5 | +-----------+ 3 rows in set (0.00 sec) 使用转换函数 BIN()、OCT()、HEX() 我们也可以显示位值... 阅读更多

在 MySQL 中,什么是位字段表示法,它如何用于编写位字段值?

Sharon Christine
更新于 2020年6月22日 05:41:38

323 次浏览

位字段表示法是一种表示法,我们可以用它来编写位字段值。位字段表示法的语法如下:语法 b'value'   OR 0bvalue 在这里,value 是使用零和一编写的二进制值。主要位字段表示法方便指定要分配给 MySQL 表的 BIT 列的值。以下示例将对此进行演示:mysql> Create table bit_testing (bittest BIT(8)); Query OK, 0 rows affected (1.09 sec) mysql> INSERT INTO bit_testing SET bittest = b'10101010'; Query OK, 1 row affected (0.07 sec) mysql> INSERT INTO bit_testing SET bittest = b'0101'; Query ... 阅读更多

如何在 MySQL 存储过程中使用局部变量?

varun
更新于 2020年6月22日 05:33:29

376 次浏览

局部变量是在存储过程中声明的变量。它们仅在其声明的 BEGIN…END 块内有效,并且可以具有任何 SQL 数据类型。为了演示这一点,我们将创建以下过程:mysql> DELIMITER // ; mysql> Create Procedure Proc_Localvariables()    -> BEGIN    -> DECLARE X INT DEFAULT 100;    -> DECLARE Y INT;    -> DECLARE Z INT;    -> DECLARE A INT;    -> SET Y = 250;    -> SET Z = 200;    -> SET A = X+Y+Z;    -> SELECT X, Y, Z, A;    -> ... 阅读更多

广告