如果一张表只有3个字段A,B,C那么 delete from table where (A+B+C) < t; 即可
但是一张表有几千个字段(可能有些夸张,但是注意就是几千个,请针对这张表,不要提分表的方案)怎么解决?
认证0级讲师
可以透過在儲存過程裡面,用遊標來做,例如你有100個字段,想其中99列的總和小於1000,排除掉其中一列(dep_name),只需要在sql裡面手動排除這一列就好了,如果需要計算的列少,可以直接照你說的枚舉相加即可。
只要你的 a b c 全是數值的字段,你這句sql 就可以了啊
沒有看清題,離題了,補充一下吧
用
select COLUMN_NAME from information_schema.COLUMNS where table_name = 'table_name'
取得所有欄位名,然後用取得的欄位名,拼裝你要的delete sql 吧,
可以透過在儲存過程裡面,用遊標來做,例如你有100個字段,想其中99列的總和小於1000,排除掉其中一列(dep_name),只需要在sql裡面手動排除這一列就好了,如果需要計算的列少,可以直接照你說的枚舉相加即可。
只要你的 a b c 全是數值的字段,你這句sql 就可以了啊
沒有看清題,離題了,
補充一下吧
用
取得所有欄位名,然後用取得的欄位名,拼裝你要的delete sql 吧,