找到 6705 篇文章 关于数据库

如何编写一个更新表中值的MySQL存储函数?

mkotla
更新于 2020年2月13日 06:59:33

1K+ 次浏览

众所周知,当我们想要返回结果时,函数最适用。因此,当我们创建用于操作表(例如插入或更新值)的存储函数时,它或多或少类似于存储过程。在下面的示例中,我们创建一个名为“tbl_update”的存储函数,它将更新名为“student_marks”表的中的值。mysql> Select * from student_marks// +---------+------+---------+---------+---------+ | Name    | Math | English | Science | History | +---------+------+---------+---------+---------+ | Raman   |   95 |      89 |      85 |      81 | ... 阅读更多

如何编写一个在表中插入值的MySQL存储函数?

Giri Raju
更新于 2020年2月13日 07:00:24

1K+ 次浏览

众所周知,当我们想要返回结果时,函数最适用。因此,当我们创建用于操作表(例如插入或更新值)的存储函数时,它或多或少类似于存储过程。示例在下面的示例中,我们创建一个名为“tbl_insert”的存储函数,它将向名为“student_marks”的表中插入值。mysql> Create Function tbl_insert(S_name Varchar(50), M1 INT, M2 INT, M3 INT, M4 INT)     -> RETURNS INT     -> DETERMINISTIC     -> BEGIN     -> INSERT INTO student_marks values(S_name, M1, M2, M3, M4);     ... 阅读更多

如何将本年度1月1日转换为纪元时间?

Paul Richard
更新于 2020年6月22日 08:06:17

75 次浏览

可以使用UNIX_TIMESTAMP()函数如下所示:mysql> Select UNIX_TIMESTAMP(CONCAT(YEAR(CURDATE()),'-01-01')); +--------------------------------------------------+ | UNIX_TIMESTAMP(CONCAT(YEAR(CURDATE()),'-01-01')) | +--------------------------------------------------+ | 1483209000                                       | +--------------------------------------------------+ 1 row in set (0.03 sec)可以使用以下查询进行验证:mysql> Select FROM_UNIXTIME(1483209000); +---------------------------+ | FROM_UNIXTIME(1483209000) | +---------------------------+ | 2017-01-01 00:00:00       | +---------------------------+ 1 row in set (0.02 sec)

如何将存储在MySQL表中的纪元时间转换为可读日期?

karthikeya Boyini
更新于 2020年6月22日 08:05:29

99 次浏览

为了说明这一点,我们使用名为“vistors”的表的以下示例,该表具有如下纪元时间:mysql> Create table visitors(userid int not null, name varchar(20), epoch int NOT NULL); Query OK, 0 rows affected (0.42 sec) mysql> Insert into visitors Values(1, 'Gaurav', 1358658942); Query OK, 1 row affected (0.04 sec) mysql> Insert into visitors Values(2, 'Raman', 1358659585); Query OK, 1 row affected (0.04 sec) mysql> Select userid, name, FROM_UNIXTIME(epoch) from visitors; +--------+--------+----------------------+ | userid | name   | FROM_UNIXTIME(epoch) | +--------+--------+----------------------+ |      1 | Gaurav | 2013-07-24 16:05:42  | |      2 | Raman  | 2013-07-24 16:16:25  | +--------+--------+----------------------+ 2 rows in set (0.00 sec)

什么是MySQL分组函数?

Alankritha Ammu
更新于 2020年6月22日 08:04:31

130 次浏览

分组函数是应用于一组行的函数,换句话说,分组函数作用于值集。下表列出了MySQL分组函数的描述:序号名称和描述1AVG()返回参数的平均值。2BIT_AND()返回按位与。3BIT_OR返回按位或。4BIT_XOR()返回按位异或。5COUNT()返回返回行的计数。6COUNT(DISTINCT)返回不同值的计数。7GROUP_CONCAT()返回连接的字符串。8MAX()返回最大值。9MIN()返回最小值。10ST()返回总体标准差。11STDDEV()返回总体标准差。12STDDEV_POP()返回总体标准差。13STDDEV_SAMP()返回样本... 阅读更多

如何在ORDER BY子句中使用分组函数?

Swarali Sree
更新于 2020年6月22日 07:56:21

114 次浏览

我们可以使用ORDER BY子句中的分组函数对结果集分组进行排序。默认情况下,排序顺序是升序,但我们可以使用DESC关键字将其反转。示例mysql> Select designation, YEAR(Doj), count(*) from employees GROUP BY designation, YEAR(DoJ) ORDER BY Count(*) DESC; +-------------+-----------+----------+ | designation | YEAR(Doj) | count(*) | +-------------+-----------+----------+ | Prof        |      2009 |        2 | | Asst.Prof   |      2015 |        1 | | Asst.Prof   |      2016 |        1 | | Prof     ... 阅读更多

如何使用MySQL SOUNDEX()函数和LIKE运算符从表中检索记录?

Chandu yadav
更新于 2020年6月22日 07:55:56

248 次浏览

众所周知,SOUNDEX()函数用于返回soundex(一种用于根据英语发音对名称进行索引的语音算法)字符串的字符串。在下面的示例中,我们从“student_info”表中获取数据,并将SOUNDEX()函数与LIKE运算符一起使用,以从表中检索特定记录:mysql> Select * from Student_info; +------+---------+------------+------------+ | id   | Name    | Address    | Subject    | +------+---------+------------+------------+ | 101 | YashPal  | Amritsar   | History    | | 105 | Gaurav   | Chandigarh | Literature | | 125 | Raman    | Shimla     ... 阅读更多

如果MySQL存储函数在使用来自表的动态值时遇到NULL值,它如何进行评估?

Ramu Prasad
更新于 2020年2月13日 07:13:43

181 次浏览

在这种情况下,如果存储函数遇到NULL值,它将返回NULL作为结果。从下面的示例中可以理解这一点,在该示例中,学生“Mohit”的记录中有一个NULL值。现在,当我们将存储函数“avg_marks”应用于此数据时,它将返回NULL作为结果。mysql> Select * from Student_marks; +-------+------+---------+---------+---------+ | Name  | Math | English | Science | History | +-------+------+---------+---------+---------+ | Raman |   95 |      89 |      85 |      81 | | Rahul |   90 | ... 阅读更多

如何创建一个使用来自表的动态数据的MySQL存储函数?

Sravani S
更新于 2020年2月13日 07:12:47

382 次浏览

MySQL存储函数可以引用表,但不能使用返回结果集的语句。因此,可以说没有返回结果集的SELECT查询。但是,我们可以使用SELECT INTO来解决这个问题。例如,我们正在创建一个函数“Avg_marks”,它使用名为“Student_marks”的表的动态数据(具有以下记录)来计算平均分数。mysql> Select * from Student_marks; +-------+------+---------+---------+---------+ | Name  | Math | English | Science | History | +-------+------+---------+---------+---------+ | Raman |   95 |      89 |      85 | ... 阅读更多

如何查看特定MySQL存储函数的源代码?

Daniol Thomas
更新于 2020年6月22日 07:55:06

322 次浏览

借助 SHOW CREATE FUNCTION 语句,我们可以查看存储函数的源代码。为了方便理解,我们使用名为 Hello() 的存储函数在查询中,如下所示:
mysql> SHOW CREATE FUNCTION Hello\G
*************************** 1. row ***************************
       Function: Hello
       sql_mode: ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION
Create Function: CREATE DEFINER=`root`@`localhost` FUNCTION `Hello`(S Varchar(20)) RETURNS varchar(20) CHARSET latin1 DETERMINISTIC RETURN CONCAT('Hello, ', S, '!')
character_set_client: cp850
collation_connection: cp850_general_ci
 Database Collation: latin1_swedish_ci
1 row in set (0.00 sec)阅读更多

广告