如何利用MySQL查詢varbinary中存儲的數(shù)據(jù)
MySQL查詢varbinary的數(shù)值
如何利用MySQL查詢varbinary中存儲的數(shù)據(jù)?這里記錄下例子
SELECT ORD(SUBSTRING(`binary_column`, 1, 1)) AS converted_value FROM `TableName`;
上述語句中,SUBSTRING(binary_column, 1, 1)
會提取字段中的第一個字節(jié)。然后,ORD()
函數(shù)會將該字節(jié)轉(zhuǎn)換為對應(yīng)的 ASCII 值,因為 unpack()
函數(shù)返回的是一個字節(jié)流。
這樣,你將得到一個名為 converted_value
的列,其中存儲了通過 MySQL 查詢得到的值為 1 的整數(shù)。
請注意,這種方法假設(shè)字段中的值是按照字節(jié)順序存儲的。如果存儲方式不同,可能需要相應(yīng)地調(diào)整提取和轉(zhuǎn)換的邏輯。
用 php的 unpack
函數(shù)解析的形式,比如上面的例子,要解出一個整型(int32)可以這樣表示,unpack('Iintval', $bindata)
mysql中varbinary什么意思_sql中varbinary 是什么數(shù)據(jù)類型
varbinary 類型和char與varchar類型是相似的,只是他們存儲的是32313133353236313431303231363533e59b9ee7ad9431333431363564二進(jìn)制數(shù)據(jù),也就是說他們是包含字節(jié)流而不是字符流,他們有二進(jìn)制字符的集合和順序,他們的對比,排序是基于字節(jié)的數(shù)值進(jìn)行的
binary與varbinary的最大長度和char與varchar是一樣的,只不過他們是定義字節(jié)長度,而char和varchar對應(yīng)的是字符長度。Varbinary是一個可以改變長度的二進(jìn)制數(shù)據(jù)。
Varbinary[(n)] 是 n 位變長度的二進(jìn)制數(shù)據(jù)。其中,n 的取值范圍是從 1 到 8000。其存儲窨的大小是 n + 4個字節(jié),不是n 個字節(jié)。
varbinary在插入不會去填補(bǔ)0x00字節(jié),查詢的時候也不會丟棄任何字節(jié),在比較的時候,所有的字節(jié)都是有效的,并且0x00
擴(kuò)展資料:
varbinary( n | max):可變長度,n 的取值范圍為 1 至 8,000,max 是指最大存儲空間是 2^31-1 個字節(jié),即最大4GB;
在將數(shù)據(jù)轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)時,SQL Server會對生成的二進(jìn)制數(shù)據(jù)進(jìn)行填充或截斷,詳細(xì)的規(guī)則是:
1、填充(或擴(kuò)展)的二進(jìn)制數(shù)據(jù)是16進(jìn)制的0x00的整數(shù)倍,這就是說,填充的字節(jié)中每一個bit都是0;
2、將字符類型轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)時,在數(shù)據(jù)的右側(cè)填充或截斷數(shù)據(jù),填充數(shù)值是0x00;
3、將其他類型數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)時,在數(shù)據(jù)的左側(cè)填充或截斷數(shù)據(jù),填充數(shù)值是0x00;在截斷數(shù)據(jù)時,保留低位的數(shù)據(jù),將高位數(shù)值截斷。
到此這篇關(guān)于MySQL查詢varbinary的數(shù)值的文章就介紹到這了,更多相關(guān)mysql查詢varbinary內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Mysql優(yōu)化之Zabbix分區(qū)優(yōu)化
這篇文章主要介紹了Mysql優(yōu)化中Zabbix分區(qū)優(yōu)化的詳細(xì)方法和優(yōu)缺點分析,一起學(xué)習(xí)下。2017-11-11MySQL關(guān)聯(lián)查詢Join的實現(xiàn)原理和優(yōu)化建議
在平時的開發(fā)過程中,大家應(yīng)該經(jīng)常會用到j(luò)oin進(jìn)行多個表的之間的關(guān)聯(lián)查詢,但是如果使用不合理的話,會導(dǎo)致查詢性能下降,本文就MySQL中的關(guān)聯(lián)查詢的實現(xiàn)原理以及一些優(yōu)化建議等內(nèi)容做一個講解,需要的朋友可以參考下2023-07-07Mac?Homebrew安裝的MySQL無法遠(yuǎn)程登錄的解決
這篇文章主要介紹了Mac?Homebrew安裝的MySQL無法遠(yuǎn)程登錄的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-11-11