關於資料庫指定規則排序的問題
資料庫有列store儲存商城名字,現在想讓商城為淘寶,亞馬遜排在前面,其餘商城依資料建立時間排序,而且需要分頁。
有想方案
一mysql有提供按field排序的方法,但是filed必須包含資料庫已存在的所有商城類型,不然沒包括的會打亂排序,但是store下的商城(比如日亞等等)會陸續增加,所以這條sql語句就要持續改變了。於是想請教有沒有什麼很好的方案。
二 增加一個字段對應store的數字id,按數字id排序,但是產品現在是想讓 淘寶,亞馬遜排在前面,但是朝令夕改想讓日亞排在前面,那這套邏輯豈不是打亂了。
請教各位有什麼好的方案。
回覆內容:
資料庫有列store儲存商城名字,現在想讓商城為淘寶,亞馬遜排在前面,其餘商城依資料建立時間排序,而且需要分頁。
有想方案
一mysql有提供按field排序的方法,但是filed必須包含資料庫已存在的所有商城類型,不然沒包括的會打亂排序,但是store下的商城(比如日亞等等)會陸續增加,所以這條sql語句就要持續改變了。於是想請教有沒有什麼很好的方案。
二 增加一個字段對應store的數字id,按數字id排序,但是產品現在是想讓 淘寶,亞馬遜排在前面,但是朝令夕改想讓日亞排在前面,那這套邏輯豈不是打亂了。
請教各位有什麼好的方案。
這個問題得兩個欄位:一個是weight(權重),一個是 sort(排序欄位),
你這樣子
淘寶: weight: 100 sort: 1,
亞馬遜:weith: 100 sort: 2,
日亞: weight: 100 sort: 3
其他: weight: 1 sort: 1
...
你的 sql 這麼寫:select * from table order by weight * sort
,這樣就解決了。如果要改權限的話,可以調整 weight,也可以改 sort
複雜邏輯排序,不要在資料庫層,應該放到程式碼層,例如放到一個可排序的陣列或是map裡,自己定義排序規則即可,jdk很多排序的陣列和map

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,刪除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段時,需指定位置以優化查詢性能和數據結構;刪除字段前需確認操作不可逆;使用在線DDL、備份數據、測試環境和低負載時間段修改表結構是性能優化和最佳實踐。

MySQL函數可用於數據處理和計算。 1.基本用法包括字符串處理、日期計算和數學運算。 2.高級用法涉及結合多個函數實現複雜操作。 3.性能優化需避免在WHERE子句中使用函數,並使用GROUPBY和臨時表。

在macOS上安裝MySQL可以通過以下步驟實現:1.安裝Homebrew,使用命令/bin/bash-c"$(curl-fsSLhttps://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"。 2.更新Homebrew,使用brewupdate。 3.安裝MySQL,使用brewinstallmysql。 4.啟動MySQL服務,使用brewservicesstartmysql。安裝後,可通過mysql-u

要安全、徹底地卸載MySQL並清理所有殘留文件,需遵循以下步驟:1.停止MySQL服務;2.卸載MySQL軟件包;3.清理配置文件和數據目錄;4.驗證卸載是否徹底。

MySQL批量插入数据的高效方法包括:1.使用INSERTINTO...VALUES语法,2.利用LOADDATAINFILE命令,3.使用事务处理,4.调整批量大小,5.禁用索引,6.使用INSERTIGNORE或INSERT...ONDUPLICATEKEYUPDATE,这些方法能显著提升数据库操作效率。

Composer是PHP的依賴管理工具,通過composer.json文件管理項目依賴。 1)解析composer.json獲取依賴信息;2)解析依賴關係形成依賴樹;3)從Packagist下載並安裝依賴到vendor目錄;4)生成composer.lock文件鎖定依賴版本,確保團隊一致性和項目可維護性。

MySQL被廣泛應用於各種項目中的原因包括:1.高性能與可擴展性,支持多種存儲引擎;2.易於使用和維護,配置簡單且工具豐富;3.豐富的生態系統,吸引大量社區和第三方工具支持;4.跨平台支持,適用於多種操作系統。
