只用sql?
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都微信小程序、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了膠州免費(fèi)建站歡迎大家使用!
update my set id=0 where id=4;
update my set id=4 where id=8;
update my set id=8 where id=0;
SQL的要點(diǎn)是中抽象應(yīng)用程序以避免數(shù)據(jù)存儲格式。你應(yīng)該總是以你想要檢索數(shù)據(jù)的意愿指定順序。例如:
SELECT col_name1, col_name2, col_name3 FROM tbl_name;
將以col_name1、col_name2、col_name3的順序返回列,而:
SELECT col_name1, col_name3, col_name2 FROM tbl_name;
將以col_name1、col_name3、col_name2的順序返回列。
在一個應(yīng)用程序中,你應(yīng)該決不基于他們的位置使用SELECT * 檢索列,因?yàn)楸环祷氐牧械捻樞蛴肋h(yuǎn)不能保證;對你的數(shù)據(jù)庫的一個簡單改變可能導(dǎo)致你的應(yīng)用程序相當(dāng)有戲劇性地失敗。
不管怎樣,如果你想要改變列的順序,你可以這樣做:
以正確的列順序創(chuàng)建一張新表。
執(zhí)行INSERT INTO new_table SELECT fields-in-new_table-order FROM old_table.
刪除或改名old_table。
ALTER TABLE new_table RENAME old_table。
create?table?test_change_column(
id?int,
name1?varchar(16),
name2?varchar(16)
);
alter?table?test_change_column?modify?column?name1?varchar(16)?after?name2;
以上是一個例子,可以一試。注意在改變字段順序時要指定這個字段的類型。
沒發(fā)現(xiàn)啥好方法,要么就刪掉重新寫字段好了。
為啥管這個呢,排列順序無所謂?。恢皇强粗灰粯?,你插入或者修改的時候都沒有影響啊。
提示:web后臺的話用的是js。
mysql排序的話一般按id,,,默認(rèn)是后入先出,,,
新聞排序,你可以見一個排序字段,比如MyOrder,數(shù)字類型,,
然后MyOrder默認(rèn)都是1,,然后搜索的時候order by MyOrder and time就行了。
然后你排序時改這個order值就行了。。。。
對mysql有些什么函數(shù)我也不清楚,若oracle有decode,內(nèi)排序等可以做到,但有個通用的方法就是分別把111,222,333分為三個子查詢?nèi)缓蟛橐粋€表,附上子查詢的行id,最外一層查詢先按行id排序再按123排序就行。