新聞中心
mysql里的位函數(shù)是怎樣計(jì)算的(詳細(xì)計(jì)算過程)
mysql的位函數(shù),就是將數(shù)字轉(zhuǎn)換成2進(jìn)制,各位求與。舉個(gè)例子2915 結(jié)果是13。29的二進(jìn)制是11101,15的二進(jìn)制是1111,位運(yùn)算 11101+01111------------ 0110101101的十進(jìn)制是13。在Oracle里面是BITAND(nExpression1, nExpression2) 參數(shù) nExpression1, nExpression2 指定按位進(jìn)行 AND 運(yùn)算的兩個(gè)數(shù)值。這個(gè)函數(shù)進(jìn)行位運(yùn)算,MySQL我沒怎么用,希望有幫助
目前創(chuàng)新互聯(lián)已為成百上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)站空間、網(wǎng)站運(yùn)營、企業(yè)網(wǎng)站設(shè)計(jì)、聊城網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
如何用mysql來統(tǒng)計(jì)各個(gè)分段的人數(shù),給個(gè)方法
score[i]/10是整除,結(jié)果保留整數(shù)部分,比如9x/10=9,8x/10=8,因此case 9表示score[i]的值是90~99,case 8表示score[i]的值是80~89,以此類推。
用MySQL計(jì)算中位數(shù)問題,怎么解決
中位數(shù):也就是選取中間的數(shù)。一種衡量集中趨勢(shì)的方法。
要找中位數(shù),首先需要從小到大排序,例如這組數(shù)據(jù):23、29、20、32、23、21、33、25;
我們將數(shù)據(jù)排序20、21、23、23、25、29、32、33;排序后發(fā)現(xiàn)有8個(gè)數(shù)怎么辦?
若有n個(gè)數(shù),n為奇數(shù),則選擇第(n+1)/2個(gè)為中位數(shù),若n為偶數(shù),則中位數(shù)是(n/2以及n+1/2)的平均數(shù)
此例中選擇24為中位數(shù)
mysql算四分位數(shù)的方法
算總數(shù),排序,區(qū)四分之一處的數(shù),可以在查詢語句中使用產(chǎn)量+1來標(biāo)志排序號(hào),再嵌套查詢
在MySQL中,如何同時(shí)計(jì)算多組數(shù)據(jù)的中位數(shù)
有點(diǎn)復(fù)雜,在你基礎(chǔ)上加了條有奇數(shù)的數(shù)據(jù)
創(chuàng)建表,插入數(shù)據(jù):
create?table?test
(cat_id?int,
price?int);
insert?into?test?values?(101,90);
insert?into?test?values?(101,99);
insert?into?test?values?(102,98);
insert?into?test?values?(103,96);
insert?into?test?values?(102,95);
insert?into?test?values?(102,94);
insert?into?test?values?(102,93);
insert?into?test?values?(103,99);
insert?into?test?values?(103,98);
insert?into?test?values?(103,97);
insert?into?test?values?(104,96);
insert?into?test?values?(104,95);
insert?into?test?values?(105,97);
insert?into?test?values?(105,96);
insert?into?test?values?(105,95);
執(zhí)行:
SELECT
t1.cat_id,
round(avg(t1.price),?1)?price
FROM
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?t1,
(
SELECT?DISTINCT
a.cat_id,
round(a.maxrank?/?2)?rank
FROM
(
SELECT
cat_id,
max(rank)?maxrank,
MOD?(max(rank),?2)?modrank
FROM
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?t1
GROUP?BY
cat_id
)?a,
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?b
WHERE
a.cat_id?=?b.cat_id
AND?a.modrank?=?0
UNION?ALL
SELECT?DISTINCT
a.cat_id,
round(a.maxrank?/?2)?+?1?rank
FROM
(
SELECT
cat_id,
max(rank)?maxrank,
MOD?(max(rank),?2)?modrank
FROM
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?t1
GROUP?BY
cat_id
)?a,
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?b
WHERE
a.cat_id?=?b.cat_id
AND?a.modrank?=?0
UNION?ALL
SELECT?DISTINCT
a.cat_id,
round(a.maxrank?/?2)?rank
FROM
(
SELECT
cat_id,
max(rank)?maxrank,
MOD?(max(rank),?2)?modrank
FROM
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?t1
GROUP?BY
cat_id
)?a,
(
SELECT
*
FROM
(
SELECT
t.cat_id,
t.price,
count(*)?AS?rank
FROM
test?t
LEFT?OUTER?JOIN?test?r?ON?t.cat_id?=?r.cat_id
AND?t.price?=?r.price
GROUP?BY
t.cat_id,
t.price
ORDER?BY
t.cat_id,
t.price?DESC
)?s
)?b
WHERE
a.cat_id?=?b.cat_id
AND?a.modrank?=?1
)?t2
WHERE
t1.cat_id?=?t2.cat_id
AND?t1.rank?=?t2.rank
GROUP?BY
t1.cat_id
結(jié)果:
其中:
select?*?from?(??
select?t.cat_id,t.price,count(*)?as?rank?from?test?t??
LEFT?OUTER?JOIN?test?r??
on?t.cat_id?=?r.cat_id??
and?t.price=r.price??
group?by?t.cat_id,t.price??
order?by?t.cat_id,?t.price?desc??
)?s
這條是主語句,主要是按照大小給出一個(gè)排名,然后根據(jù)中位數(shù)的公式,偶數(shù)的話,取最中間兩個(gè)的平均數(shù),奇數(shù)取最中間的數(shù)。自己研究一下吧。
如何使用簡單的SQL查詢?cè)贛ySQL中計(jì)算中位數(shù)
第五十九回 許褚裸衣斗馬超 曹操抹書間韓遂第六十回 張永年反難楊修 龐士元議取西蜀
網(wǎng)站名稱:mysql怎么求分位數(shù),80分位數(shù)怎么求
當(dāng)前鏈接:http://fisionsoft.com.cn/article/hsddid.html