你需要知道在mysql數(shù)據(jù)庫中是沒有行,這一概念的。所以說,你讓下一行減去上一行這個本身就是不成立的。處理的辦法是把數(shù)據(jù)輸出之后,用程序比如PHP。等等進行處理輸出。單獨用sql是無法實現(xiàn)的。

創(chuàng)新互聯(lián)公司從2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元桐梓做網(wǎng)站,已為上家服務(wù),為桐梓各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220
select 余額=存款-取款 from yourTable (這個只會顯示,不會更新)
update yourTable set 余額 = (存款-取款)
更新a列,設(shè)置值為b列減10分鐘:
UPDATE xxx SET a=DATE_SUB(b,INTERVAL 10 MINUTE)
加用DATE_ADD,單位有:YEAR 、MONTH 、DAY 、HOUR 、MINUTE 、SECOND ,保留INTERVAL 不變。
--這樣是顯示的結(jié)果是差值總的秒數(shù)
select sum(unix_timestamp(B)-unix_timestamp(A)) as 秒數(shù)
from tb
--這樣是顯示成 xxx:xx:xx 的形式
select sec_to_time(sum(unix_timestamp(B)-unix_timestamp(A))) as ti
from tb
--
表結(jié)構(gòu)? 測試數(shù)據(jù)?
按哪一列排序?
測試數(shù)據(jù).
CREATE TABLE temp (
year INT,
salary INT
);
INSERT INTO temp VALUES(2000, 1000);
INSERT INTO temp VALUES(2001, 2000);
INSERT INTO temp VALUES(2002, 3000);
INSERT INTO temp VALUES(2003, 4000);
預(yù)期要求結(jié)果:
year salary
2000 1000
2001 1000
2002 1000
2003 10000
SELECT
year,
salary - ISNULL((SELECT TOP 1 salary FROM temp t2 WHERE t2.year temp.year ORDER BY year DESC), 0) AS salary
FROM
temp;
go
year salary
----------- -----------
2000 1000
2001 1000
2002 1000
2003 1000
(4 行受影響)
網(wǎng)頁標題:mysql怎么設(shè)置列相減 mysql 日期相減 得數(shù)值
網(wǎng)站路徑:http://chinadenli.net/article44/hipeee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App開發(fā)、App設(shè)計、網(wǎng)站內(nèi)鏈、建站公司、全網(wǎng)營銷推廣、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)