導航:首頁 > 使用方法 > 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函數使用方法相關的資料

熱點內容
番茄灰霉病治療土方法 瀏覽:416
oppo手機耳線的包裝方法 瀏覽:705
如何尋找正確的工作方法 瀏覽:730
羊布病普遍治療方法 瀏覽:886
研究方法論是誰寫的 瀏覽:523
嬰兒肚子脹怎麼辦有哪些方法 瀏覽:329
蘋果手機的感應在哪裡設置方法 瀏覽:607
香碗製作方法視頻 瀏覽:93
北京蛋白質組學分析方法 瀏覽:783
有哪些方法稀釋油漆 瀏覽:184
可以替代焊錫的sma頭連接方法 瀏覽:467
剪輯視頻的方法 瀏覽:593
如何用化學方法鑒別環己烷和苯胺 瀏覽:539
浙江菜烹飪方法有哪些 瀏覽:382
星戰模擬器怎麼找到自己的家正確方法 瀏覽:767
2020洪災原因和解決方法 瀏覽:828
長期失眠睡不著怎麼辦最好的方法 瀏覽:112
哪些激勵方法可以激勵員工 瀏覽:337
達爾文作用什麼方法得出進化論 瀏覽:633
鼓樓區干貨離心機操作方法有哪些 瀏覽:394