Mysql->order by SQL 根據多個條件排序
首先根據class_name字串長短升序排列,然後根據開始時間降序排列:
SELECT * FROM signup_class s ORDER BY IFNULL(length(trim(s.class_name)),0) ASC,s.date_start DESC
註釋:
trim(s.class_name):去除字串中的空格
length(trim(s.class_name):去除空格後字串長度
ifnull(expr1,expr2):如果不是空,取expr1;如果是空,取expr2
asc:升序進行排序;
desc:降序進行排序。
相關推薦
Mysql->order by SQL 根據多個條件排序
Mysql中根據多個條件排序:(各個條件間使用逗號隔開) 首先根據class_name字串長短升序排列,然後根據開始時間降序排列: SELECT * FROM signup_class s
sql存儲過程,根據多個條件查詢,返回一個dataTable或者DataSet
bold new exc cnblogs 所有 sql存儲過程 存儲 ring table 不廢話,先直接代碼 首先sql部分(我在這裏加了一個@zx作為判斷,一般不需要這個參數): ALTER Proc [dbo].[Proc_Boss_Show] @StrIndex
SQL 用多個條件進行排序;以及根據一個條件的多個值,進行排序
1、先說第一個用多個條件進行排序 ORDER BY name,age (多條件排序,還有條件可以再加在後面) ORDER BY name desc,age&nb
若sql語句中order by指定了多個欄位,則怎麼排序?
舉個例子吧:order by id desc,time desc先是按 id 降序排列 (優先)如果 id 欄位 有些是一樣的話 再按time 降序排列 (前提是滿足id降序排列) order by name, age desc name優先name一樣的話 就按a
mybatis聽課筆記(根據多個條件查詢)
list不常用,用的最多的是map例項化物件。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper
mysql order by field 按指定欄位排序
舉個例子 a表裡有b欄位 b欄位裡有資料-1,1,2,3,4 如果想把4,2,3的排在最前面,其他的排在後面,並且保留4,2,3的順序 sql: select * from a order by FIELD(3,2,4) DESC 如果是這樣寫sql: s
mysql order by不起作用各種型別排序說明
當你有一天發現order by不起作用, 首先不要懷疑跟索引啊,主鍵啊,反正一堆亂七八糟的想法。 其實排序正常只有int型別才起作用 所以你只需要看一看排序的欄位型別就好 下面說說幾種排序 數字 型別:order by 欄位 排序方式 字串型別:order b
mysql order by 多個字段
out jsb fonts gravity nts order by water size mar 下圖是只加了一個排序的結果: 可以看到,單一字段是沒問題的。如果加入c2呢?下圖是c2 可以發現,這裏的orderby是先按c1增序,然後對於按c1排好序以後的相同的元素
mysql order by多個字段
sel 字段排序 div 默認 sele strong spa 關鍵字 asc Mysql order by 多字段排序 mysql單個字段降序排序: select * from table order by id desc; mysql單個字段升序排序:
MYSQL order by 根據不同條件升序或降序
現在有一個表,欄位age和type,type = 1的時候需要age降序排列,type = 2的時候age升序排列。一開始覺得很簡單啊,於是就寫: SELECT * FROM table_a ORDER BY CASE WHEN type = 1 THEN
mysql order by多個欄位排序
MySql Order By 多個欄位 排序規則比如:如要根據ConfigID和MarketID來排序有如下語句:SELECT * FROM TABLE ORDER BY ConfigID, MarketID DESC;那麼結果:分析:其實這個語句等同於:先按照ConfigI
order by 多個條件
ORDER子句按一個或多個(最多16個)欄位排序查詢結果,可以是升序(ASC)也可以是降序(DESC),預設是升序。ORDER子句通常放在SQL語句的最後。ORDER子句中定義了多個欄位,則按照欄位的先後順序排序。 例: SELECT ProductName,Uni
mybatis針對Oracle資料庫進行(單個或多個條件)批量操作(新增、修改、刪除)的sql寫法--mysql
1、批量新增: <insert id="addMonthDutyIntoDB" parameterType="java.util.List"> insert into TB_D
mysql查詢:同一個欄位滿足多個條件的對應欄位
比如查詢patient_id,對應的code_id分別等於1,2,3 select distinct patient_id from qs_patient_code WHERE code_id = 1 or code_id = 3 or code_id = 2
MySql查詢結果過濾同時滿足多個條件的資料
建立學生表,內有欄位 姓名,年齡,性別,年級 ,(這裡我只建立到三年級) 備註 :性別 男/女,,年級 :學前班/一到六年級,,姓名年齡不限 要求: 查詢一年級的男生和二到五年級的所有學生 對於以上的查詢語句該編寫SQL select * from student where
【mysql】sql刪除多個欄位重複資料有主鍵和沒主鍵解決方法
table user name age nub 張三 12 23 張三 12 23 張三 12 23 李四 13 21 李四 13 21 王五 11 25
mysql 批處理命令執行多個sql指令碼
方法1 若有SQL指令碼a.sql, b.sql, 其目錄在f盤根目錄下, 則可再寫一個SQL指令碼c.sql(假設其目錄也在f盤根目錄下, 也可以在其他路徑下)如下: source f:/a.sql; source f:/b.sql; 然後執行
mysql order by if()或order by in()條件排序
在做sqlzoo的時候,碰到一個SQL的排序問題,他把符合條件的單獨幾行,可以放在查詢結果的開始,或者查詢結果的尾部。 通過的方法就是IN語句(也可以通過IF語句) 自己做了個測試,如下,這個是表的所有內容 使用ORDER BY配合
sql中left join on 多個條件需要特殊注意之處
定義: LEFT JOIN 關鍵字會從左表 (table_name1) 那裡返回所有的行,即使在右表 (table_name2) 中沒有匹配的行。例如如下查詢: SELECT column_name(s) FROM table_name1 LEFT JOIN table_
mysql根據多個欄位按照固定順序排序
1.根據cstate的4,5,7,1,2,3順序排序 語句: SELECT c.cstate,c.mc_1 from s_c c where c.cstate in(1,2,3,4,5,7) ORDER BY FIELD(c.cstate,4,5,7,1,2,3); 結