我有一个包含几列的表格。特别是有两列,Nominal& MktBuyAmt。
我想要做的是,当两列中的两个值相同时,使用Nominal列中的值,但如果两个值不同,则选择MktBuyAmt列中的值。
快速示例
Nominal MktBuyAmt
7 8
5 5
3 3
答案
NewSS
8
5
3
下面是我的尝试(我从这里的示例中复制了),但它返回一条错误消息,指出无效的列名“MktBuyAmt”。 MktBuyAmt下面有一条红线是我有Nominal = MktBuyAmt的那条。
select Id, Name, Nominal, MktButAmt,
case when Nominal = MktBuyAmt
then Nominal
else MktButAmt end NewSS
from tblA
答案 0 :(得分:2)
public override bool Equals(object obj) {
// Easy tests:
// 1. If "this" and "obj" are in fact just the same reference?
// 2. Since `Node` (or Equals) is not sealed, the safiest is to check types
if (object.ReferenceEquals(this, obj))
return true;
else if (null == obj || other.GetType() != GetType())
return false;
// Potentially time/resource cosuming (we don't know IInterface implementation)
return ((Node) obj).myInterface == myInterface;
}
输出
LayoutInflater layoutInflater
= (LayoutInflater)getBaseContext()
.getSystemService(LAYOUT_INFLATER_SERVICE);
View popupView = layoutInflater.inflate(R.layout.popup, null);
final PopupWindow popupWindow = new PopupWindow(popupView, -1, 200, true);
Button btnDismiss = (Button)popupView.findViewById(R.id.dismiss);
btnDismiss.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
popupWindow.dismiss();
}});
popupWindow.showAtLocation(popupView, Gravity.TOP, 0, 0);
答案 1 :(得分:1)
我假设您实际上想要获得两列中较大的一列,如果是这种情况,那么您可以使用下面的内容。否则,只需按照评论中的建议选择MktBuyAmt。
declare @t table (nominal int, mktbuyamt int)
insert into @t
values
(7,8),
(8,7),
(3,3)
select
case when nominal >= mktbuyamt then nominal else mktbuyamt end as NewSS
from @t