日期:2014-05-18  浏览次数:20639 次

比较两个字段的值,然后把较小的值写入第三个字段,如何写SQL语句.
原来是ASP+SQL的要实现价格的排序.
有两个字段,零售价p1,优惠价P2.原来想实现,排序按价格(即不管是零售价的字段还是优惠价的字段,只看其值.)来把记录从小到大排.两者都为空,就排最后.,结果不知道order   by怎么写.
如果有知道的请赐教.

现在想用另一种方法实现,新建一个P3字段,因为数据库太大.不可能一条条更改,所以想用一条语句比较两个字段的大小.把小的写入第三个字段.NULL视为最大的。也就是说两个字段如果有一个为空,则P3取值为不为空的那个.如果都不为空,则取小的那个,一般就是P2.如果都为空,则取NULL值

请赐教!

------解决方案--------------------
update t1 set p3=case when field1 <field2 then field1 else field2 end