簡體   English   中英

Mysql按VARCHAR字段插入訂單號

[英]Mysql Insert Order Number By VARCHAR Field

我有一個關於通過特定訂單類型插入行訂單號的問題。

Products表有OrderNumber字段。 我想通過名稱以編程方式將新行添加到適當的OrderNumber。 如果引用列是整數,那么它必須很容易

update products set OrderNumber=OrderNumber+1 where Price>555

varchar字段有類似的方式嗎?

update products set OrderNumber=OrderNumber+1 where Name>'bla%'

謝謝

您可以使用序列號運行更新查詢,如此處所示

你可以使用STRCMP('text','text2')

 
 
 
 
  
  
  update products set OrderNumber=OrderNumber+1 where STRCMP(Name, 'bla') = 1;
 
 
  

我錯過了你的觀點。 你能嘗試這樣的東西嗎?

SET @rownum:=0;
update 
set OrderNumber=@rownum:=@rownum + 1
from products
order by Name;

聽起來很糟糕。 為什么不簡單地使用簡單的auto_increment字段並按順序排序? 通過定義的每個新記錄都具有比其任何前任更高的ID。

你的意思是像update products set OrderNumber=OrderNumber+1 where Name like 'bla%'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM