导航:首页 > 使用方法 > mysql函数使用方法

mysql函数使用方法

发布时间:2022-06-29 18:38:45

‘壹’ PHP mysql_result()函数使用方法

mysql_result定义和用法
mysql_result()
函数返回结果集中一个字段的值。
mysql_result()
返回
MySQL
结果集中一个单元的内容。字段参数可以是字段的偏移量或者字段名,或者是字段表点字段名(tablename.fieldname)。如果给列起了别名('select
foo
as
bar
from...'),则用别名替代列名。
如果成功,则该函数返回字段值。如果失败,则返回
false。
调用
mysql_result()
不能和其它处理结果集的函数混合调用。
语法
mysql_result(data,row,field)
参数
描述
data
必需。规定要使用的结果标识符。该标识符是
mysql_query()
函数返回的。
row
必需。规定行号。行号从
0
开始。
field
可选。规定获取哪个字段。可以是字段偏移值,字段名或
table.fieldname。
如果该参数未规定,则该函数从指定的行获取第一个字段。
说明
当作用于很大的结果集时,应该考虑使用能够取得整行的函数。这些函数在一次函数调用中返回了多个单元的内容,比
mysql_result()
快得多。
此外请注意,在字段参数中指定数字偏移量比指定字段名或者
tablename.fieldname
要快得多。
例子
<?php
$con
=
mysql_connect("localhost",
"hello",
"321");
if
(!$con)
{
die('Could
not
connect:
'
.
mysql_error());
}
$db_selected
=
mysql_select_db("test_db",
$con);
$sql
=
"SELECT
*
from
Person";
$result
=
mysql_query($sql,$con);
echo
mysql_result($result,0);
mysql_close($con);
?>
输出类似:
Adams
php中mysqli替换mysql_result的官方方法
今天升级了php版本,顺便想把php代码中的mysql连接方式改成mysqli,因为官方自php5.3开始一直推荐mysqli

pdo
。不多说了,贴代码
//
错略的使用mysqli替换
if
(!function_exists('mysql_result'))
{
function
mysql_result($result,
$number,
$field=0)
{
mysqli_data_seek($result,
$number);
$row
=
mysqli_fetch_array($result);
return
$row[$field];
}
}
好了,这篇文章就介绍到这了。

‘贰’ 在mysql中自定义的函数怎么调用

调用如:select 函数名(参数列表)。

‘叁’ 详解MySQL中的SQRT函数的使用方法

MySQL的SQRT函数是用来计算出任何数量的平方根。可以使用SELECT语句找出方检定根的任意数如下:
mysql>
select
SQRT(16);
+----------+
|
SQRT(16)
|
+----------+
|
4.000000
|
+----------+
1
row
in
set
(0.00
sec)
所看到的浮点值,因为内部MySQL将处理浮点数据类型的平方根。
可以使用SQRT函数,计算出记录的平方根。了解SQRT函数更详细用法,考虑EMPLOYEE_TBL的表具有以下记录:
mysql>
SELECT
*
FROM
employee_tbl;
+------+------+------------+--------------------+
|
id
|
name
|
work_date
|
daily_typing_pages
|
+------+------+------------+--------------------+
|
1
|
John
|
2007-01-24
|
250
|
|
2
|
Ram
|
2007-05-27
|
220
|
|
3
|
Jack
|
2007-05-06
|
170
|
|
3
|
Jack
|
2007-04-06
|
100
|
|
4
|
Jill
|
2007-04-06
|
220
|
|
5
|
Zara
|
2007-06-06
|
300
|
|
5
|
Zara
|
2007-02-06
|
350
|
+------+------+------------+--------------------+
7
rows
in
set
(0.00
sec)
假设根据上面的表格,要计算所有的dialy_typing_pages的平方根,然后可以通过使用下面的命令:
mysql>
SELECT
name,
SQRT(daily_typing_pages)
->
FROM
employee_tbl;
+------+--------------------------+
|
name
|
SQRT(daily_typing_pages)
|
+------+--------------------------+
|
John
|
15.811388
|
|
Ram
|
14.832397
|
|
Jack
|
13.038405
|
|
Jack
|
10.000000
|
|
Jill
|
14.832397
|
|
Zara
|
17.320508
|
|
Zara
|
18.708287
|
+------+--------------------------+
7
rows
in
set
(0.00
sec)

‘肆’ 在mysql里怎样自定义函数,如何调用和执行

create
function
函数名称(
参数列表
)
reurns
返回值
类型
函数体
执行的方法很简单:
加载
**
create
function
<函数名称>
returns
{string|real|integer}
**
soname
<你定义的动态库位置>
释放!
**
drop
function
<函数名称>

‘伍’ 如何利用MySQL数据库使用字符串函数

方法/步骤
首先,计算字符串的字符数,可以用char_length()函数,代码如下:
select
'zhangsan',char_length('zhangsan');
如下图所示:
字符串中的length()函数,用来计算字符串的长度,代码如下:
select
'zhangsan',length('zhangsan1111');
如下图所示:

字符串函数
中有时需要将几个不同的字符串拼接在一起,这时可以利用concat(a1,a2,...)和concat_ws(b,b1,b2,...),可以将各字符串合并成一个字符串,代码如下:
select
concat('zhang','san','feng');
select
concat_ws('*','zhang','san','feng');
如下图所示:

‘陆’ MySQL的FIND_IN_SET函数使用方法分享

很多时候我们在设计数据库时有这种情况,比如:
有个文章表里面有个type字段,他存储的是文章类型,有
1头条,2推荐,3热点,4图文
.....11,12,13等等
现在有篇文章他既是
头条,又是热点,还是图文,
type中以
1,3,4的格式存储.
那们我们如何用sql查找所有type中有4图文标准的文章呢,
这就要我们的find_in_set出马的时候到了.
先看mysql手册中find_in_set函数的语法:
FIND_IN_SET(str,strlist)
假如字符串str
在由N
子链组成的字符串行表strlist
中,则返回值的范围在
1

N
之间。一个字符串行表就是一个由一些被‘,'符号分开的自链组成的字符串。如果第一个参数是一个常数字符串,而第二个是type
SET列,则
FIND_IN_SET()
函数被优化,使用比特计算。如果str不在strlist
或strlist
为空字符串,则返回值为
0
。如任意一个参数为NULL,则返回值为
NULL。这个函数在第一个参数包含一个逗号(‘,')时将无法正常运行。
复制代码
代码如下:
mysql>
SELECT
FIND_IN_SET('b','a,b,c,d');
->
2
用起来很简单
就以上面我说到的情况来举例:
以下为引用的内容:
复制代码
代码如下:
select
*
from
article
where
FIND_IN_SET('4',type)

‘柒’ 如何使用mysql的 c API 函数mysql

MYSQL_OPT_READ_TIMEOUT 是 MySQL c api 客户端中用来设置读取超时时间的参数。在 MySQL 的官方文档中,该参数的描述是这样的:

‘捌’ mysql date函数怎么用

以每24小时作为一份时间(而非自然日),根据用户的配置有两种工作模式:带状模式中,用户仅定义开始日期时,从开始日期(含)开始,每份时间1个分片地无限增加下去;环状模式中,用户定义了开始日期和结束日期时,以结束日期(含)和开始日期(含)之间的时间份数作为分片总数(分片数量固定),以类似取模的方式路由到这些分片里。

1. DBLE 启动时,读取用户在 rule.xml 配置的 sBeginDate 来确定起始时间
2. 读取用户在 rule.xml 配置的 sPartionDay 来确定每个 MySQL 分片承载多少天内的数据
3. 读取用户在 rule.xml 配置的 dateFormat 来确定分片索引的日期格式
4. 在 DBLE 的运行过程中,用户访问使用这个算法的表时,WHERE 子句中的分片索引值(字符串),会被提取出来尝试转换成 Java 内部的时间类型
5. 然后求分片索引值与起始时间的差,除以 MySQL 分片承载的天数,确定所属分片

1. DBLE 启动时,读取用户在 rule.xml 配置的起始时间 sBeginDate、终止时间 sEndDate 和每个 MySQL 分片承载多少天数据 sPartionDay
2. 根据用户设置,建立起以 sBeginDate 开始,每 sPartionDay 天一个分片,直到 sEndDate 为止的一个环,把分片串联串联起来
3. 读取用户在 rule.xml 配置的 defaultNode
4. 在 DBLE 的运行过程中,用户访问使用这个算法的表时,WHERE 子句中的分片索引值(字符串),会被提取出来尝试转换成 Java 内部的日期类型
5. 然后求分片索引值与起始日期的差:如果分片索引值不早于 sBeginDate(哪怕晚于 sEndDate),就以 MySQL 分片承载的天数为模数,对分片索引值求模得到所属分片;如果分片索引值早于 sBeginDate,就会被放到 defaultNode 分片上

与MyCat的类似分片算法对比

中间件
DBLE
MyCat

分片算法种类 date 分区算法 按日期(天)分片
两种中间件的取模范围分片算法使用上无差别

开发注意点
【分片索引】1. 必须是字符串,而且 java.text.SimpleDateFormat 能基于用户指定的 dateFormat 来转换成 java.util.Date
【分片索引】2. 提供带状模式和环状模式两种模式
【分片索引】3. 带状模式以 sBeginDate(含)起,以 86400000 毫秒(24 小时整)为一份,每 sPartionDay 份为一个分片,理论上分片数量可以无限增长,但是出现 sBeginDate 之前的数据而且没有设定 defaultNode 的话,会路由失败(如果有 defaultNode,则路由至 defaultNode)
【分片索引】4. 环状模式以 86400000 毫秒(24 小时整)为一份,每 sPartionDay 份为一个分片,以 sBeginDate(含)到 sEndDate(含)的时间长度除以单个分片长度得到恒定的分片数量,但是出现 sBeginDate 之前的数据而且没有设定 defaultNode 的话,会路由失败(如果有 defaultNode,则路由至 defaultNode)
【分片索引】5. 无论哪种模式,分片索引字段的格式化字符串 dateFormat 由用户指定
【分片索引】6. 无论哪种模式,划分不是以日历时间为准,无法对应自然月和自然年,且会受闰秒问题影响

运维注意点
【扩容】1. 带状模式中,随着 sBeginDate 之后的数据出现,分片数量的增加无需再平衡
【扩容】2. 带状模式没有自动增添分片的能力,需要运维手工提前增加分片;如果路由策略计算出的分片并不存在时,会导致失败
【扩容】3. 环状模式中,如果新旧 [sBeginDate,sEndDate] 之间有重叠,需要进行部分数据迁移;如果新旧 [sBeginDate,sEndDate] 之间没有重叠,需要数据再平衡

配置注意点
【配置项】1. 在 rule.xml 中,可配置项为 <propertyname="sBeginDate"> 、 <propertyname="sPartionDay"> 、 <propertyname="dateFormat"> 、 <propertyname="sEndDate"> 和 <propertyname="defaultNode">
【配置项】2.在 rule.xml 中配置 <propertyname="dateFormat">,符合 java.text.SimpleDateFormat 规范的字符串,用于告知 DBLE 如何解析sBeginDate和sEndDate

【配置项】3.在 rule.xml 中配置 <propertyname="sBeginDate">,必须是符合 dateFormat 的日期字符串

【配置项】4.在 rule.xml 中配置 <propertyname="sEndDate">,必须是符合 dateFormat 的日期字符串;配置了该项使用的是环状模式,若没有配置该项则使用的是带状模式

【配置项】5.在 rule.xml 中配置 <propertyname="sPartionDay">,非负整数,该分片策略以 86400000 毫秒(24 小时整)作为一份,而 sPartionDay 告诉 DBLE 把每多少份放在同一个分片

【配置项】6.在 rule.xml 中配置 <propertyname="defaultNode"> 标签,非必须配置项,不配置该项的话,用户的分片索引值没落在 mapFile 定义

‘玖’ MySQL字符串处理函数的几种常见用法

方法/步骤
首先,计算字符串的字符数,可以用char_length()函数,代码如下:
select 'zhangsan',char_length('zhangsan');
如下图所示:

字符串中的length()函数,用来计算字符串的长度,代码如下:
select 'zhangsan',length('zhangsan1111');
如下图所示:
字符串函数中有时需要将几个不同的字符串拼接在一起,这时可以利用concat(a1,a2,...)和concat_ws(b,b1,b2,...),可以将各字符串合并成一个字符串,代码如下:
select concat('zhang','san','feng');
select concat_ws('*','zhang','san','feng');

阅读全文

与mysql函数使用方法相关的资料

热点内容
如何打开鸡蛋的方法 浏览:435
路由vpn怎么设置方法 浏览:462
吊车头的拉线安装方法 浏览:76
番茄灰霉病治疗土方法 浏览:419
oppo手机耳线的包装方法 浏览:709
如何寻找正确的工作方法 浏览:733
羊布病普遍治疗方法 浏览:890
研究方法论是谁写的 浏览:526
婴儿肚子胀怎么办有哪些方法 浏览:333
苹果手机的感应在哪里设置方法 浏览:611
香碗制作方法视频 浏览:97
北京蛋白质组学分析方法 浏览:787
有哪些方法稀释油漆 浏览:189
可以替代焊锡的sma头连接方法 浏览:472
剪辑视频的方法 浏览:597
如何用化学方法鉴别环己烷和苯胺 浏览:544
浙江菜烹饪方法有哪些 浏览:387
星战模拟器怎么找到自己的家正确方法 浏览:772
2020洪灾原因和解决方法 浏览:831
长期失眠睡不着怎么办最好的方法 浏览:117