Mysql in mysql In長度的問題?

2021-10-17 06:57:56 字數 839 閱讀 6601

不記得有代替in的語句,可能也是因為我不太關注sql導致水平較低哈。

這種問題通常是由於無限分類表本身的設計問題導致的,例如只有id, parent_id兩個字段,所以只要in了,如果無限分類表包含 id, parent_id, level(樹高), path這個欄位的時候就可以避免使用in了。

我個人使用的乙個無限分級表包括以下的字段

id 唯一索引

parent_id 父級的id

number 數軸投影序號

leve 樹高

left_number 已當前節點為樹根時,其下的最左端的子節點的數軸投影序號

乙個簡單的例子演變:

[id:1, level:1 number: 1, left_number:1]

插入乙個子節點

[id:1, level:1 number: 2, left_number:1]

[id:2, level:2 number: 1, left_number:1]

於level2再插入乙個子節點

[id:1, level:1 number: 3, left_number:1]

[id:2, level:2 number: 1, left_number:1] [id:2, level:2 number: 2, left_number:2]

這種樹形的資料維護很麻煩,但是搜尋要快的多,例如任意節點下的全部子節點就是left_number到number-1。用這個做過乙個chuan啊銷系統的人員結構樹,效果很不錯。

核心思路就是把一顆樹的分支轉換為數軸上的點/線段,從而在數軸上得到完整的樹的投影。

忘了乙個top_id,表示節點對應的根節點,否則表裡面有多顆樹的話就出問題了。

HTTP長連線和WebSocket長連線的區別

要理解http長連線和websocket長連線的區別,首先要理解一下什麼是http的長連線和短連線。首先需要消除乙個誤解 http協議是基於請求 響應模式的,因此客戶端請求後只要服務端給了響應,本次http請求就結束了,沒有長連線這一說。那麼自然也就沒有短連線這一說了。所謂的http分為長連線和短連...

最大幀長和最小幀長詳解

文章出處 在傳統乙太網中,為什麼要有最小幀長度和最大幀長度的限制?乙太網 ieee 802.3 幀格式 1.前導碼 7位元組0x55,一串1 0間隔,用於訊號同步 2.幀起始定界符 1位元組0xd5 10101011 表示一幀開始 3.da 目的mac 6位元組 4.sa 源mac 6位元組 5.型...

長連線 短鏈結 長輪詢 短輪詢

原文 那就是一直認為,http連線分為長連線和短連線,而我們現在常用的都是http1.1,因此我們用的都是長連線。這句話其實只對了一半,我們現如今的http協議,大部分都是1.1的,因此我們平時用的基本上都是長連線。但是前半句是不對的,http協議根本沒有長短連線這一說,也正因為誤解了這個,導致對於...