mysql處理查詢模型 Mysql的查詢模型

2021-10-19 04:20:03 字數 1030 閱讀 6190

mysql查詢模型:

把列看成變數,把where後面看成php中的if(exp)  表示式 哪一行能讓exp為真,哪一行就能取出來

還有列既然可以看作是變數,變數之間可以進行與運算。

下面有一道題目可以幫助我們更好的理解列是變數這一問題

把num值處於[20,29]之間,改為20

num值處於[30,39]之間的,改為30

mian表

| num |

| 3 |

| 12 |

| 15 |

| 25 |

| 23 |

| 29 |

| 34 |

| 37 |

| 32 |

| 45 |

| 48 |

| 52 |

create table mian

num  int

); insert into mian

values

(3),(12),(15),(25),(23),(29),(34),(37),(32),(45),(48),(52);

一開始:我是這樣寫的

update mian set num=20

where

num between 20 and 29;

update mian set num=30

where

num between 30 and 39;

這是因為我沒有真正理解列是變數這一概念

其實我們可以把(num)/10 去整然後*10,floor為向下取整函式

具體如下 :

update mian set num=floor(num/10)*10

where

numbetween 20 and 39;

mysql中還許多函式,這個可以參考手冊

floor(x)   返回小於x的最大整數值

mod(x,y)                 返回x/y的模(餘數)

concat(s1,s2...,sn)將s1,s2...,sn連線成字串

Hibernate 處理查詢 in 字句

在處理hibernate的實體查詢,一般可以採用多種方式處理複雜的查詢,比如hql的靈活使用,query的外部引數化賦值等。但是,對於in字句在sql中的處理,也會出現,不過,一般不建議使用這樣的sql處理,轉而採用關聯條件來處理這種查詢。一般對於可變引數傳入在in字句中,大概有下面幾種總結的方法 ...

oracle鎖的處理查詢,處理

一 鎖相關的表 1 相關表 select from v lock select from v sqlarea select from v session select from v process select from v locked object select from all objects...

SQL中海量資料處理(查詢 刪除)

1 合理建立索引,可在查詢時優化 2 刪除所有資料 truncate table 表 執行該操作時不寫入日誌檔案而且快速 3 如果僅刪除1000萬條資料中符合條件的300萬條 a 使用delete時條件中有索引比沒有索引要快些 b 不能使用 truncate table c可以一部分資料迴圈刪除再收...