3.23学习内容,竖立seekbar,sql获取删除重复数据

竖立的seekbar:

http://blog.csdn.net/metalseed/article/details/8014758

原理:

继承AbsSeekBar

  1. 通过重写方法旋转:
  2.  protected void onDraw(Canvas c)  
  3.     {  
  4.             c.rotate(-90);  
  5.             c.translate(-height,0);  
  6.             super.onDraw(c);  
  7.     }  
得到一个由下到上逐渐增大的seekbar




http://blog.csdn.net/lmj623565791/article/details/43752383

一个自定义的圆形drawable

package com.zhy.view;

import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
import android.graphics.ColorFilter;
import android.graphics.Paint;
import android.graphics.PixelFormat;
import android.graphics.RectF;
import android.graphics.Shader.TileMode;
import android.graphics.drawable.Drawable;

public class CircleImageDrawable extends Drawable
{

	private Paint mPaint;
	private int mWidth;
	private Bitmap mBitmap ; 

	public CircleImageDrawable(Bitmap bitmap)
	{
		mBitmap = bitmap ; 
		BitmapShader bitmapShader = new BitmapShader(bitmap, TileMode.CLAMP,
				TileMode.CLAMP);
		mPaint = new Paint();
		mPaint.setAntiAlias(true);
		mPaint.setShader(bitmapShader);
		mWidth = Math.min(mBitmap.getWidth(), mBitmap.getHeight());
	}

	@Override
	public void draw(Canvas canvas)
	{
		canvas.drawCircle(mWidth / 2, mWidth / 2, mWidth / 2, mPaint);
	}

	@Override
	public int getIntrinsicWidth()
	{
		return mWidth;
	}

	@Override
	public int getIntrinsicHeight()
	{
		return mWidth;
	}

	@Override
	public void setAlpha(int alpha)
	{
		mPaint.setAlpha(alpha);
	}

	@Override
	public void setColorFilter(ColorFilter cf)
	{
		mPaint.setColorFilter(cf);
	}

	@Override
	public int getOpacity()
	{
		return PixelFormat.TRANSLUCENT;
	}

}


sql重复语句:

http://blog.csdn.net/zhoukang0916/article/details/5085513

删除重复数据

delete a from  #T a where  exists(select 1 from #T where Num=a.Num and Name=a.Name and ID>a.ID)--只保留一条记录 

  1. --II、Name相同ID保留最大的一条记录:  
  2.   
  3. 方法1:  
  4. delete a from #T a where  exists(select 1 from #T where Name=a.Name and ID>a.ID)  
  5.   
  6. 方法2:  
  7. delete a  from #T a left join (select max(ID)ID,Name from #T group by Name) b on a.Name=b.Name and a.ID=b.ID where b.Id is null  
  8.   
  9. 方法3:  
  10. delete a from #T a where ID not in (select max(ID) from #T where Name=a.Name)  
  11.   
  12. 方法4(注:ID为唯一时可用):  
  13. delete a from #T a where ID not in(select max(ID)from #T group by Name)  
  14.   
  15. 方法5:  
  16. delete a from #T a where (select count(1) from #T where Name=a.Name and ID>a.ID)>0  
  17.   
  18. 方法6:  
  19. delete a from #T a where ID<>(select top 1 ID from #T where Name=a.name order by ID desc)  
  20.   
  21. 方法7:  
  22. delete a from #T a where ID<any(select ID from #T where Name=a.Name)

 查询:


  1. --I、Name相同ID最小的记录(推荐用1,2,3),方法3在SQl05时,效率高于1、2  
  2. 方法1:  
  3. Select * from #T a where not exists(select 1 from #T where Name=a.Name and ID<a.ID)  
  4.   
  5. 方法2:  
  6. select a.* from #T a join (select min(ID)ID,Name from #T group by Name) b on a.Name=b.Name and a.ID=b.ID  
  7.   
  8. 方法3:  
  9. select * from #T a where ID=(select min(ID) from #T where Name=a.Name)  
  10.   
  11. 方法4:  
  12. select a.* from #T a join #T b on a.Name=b.Name and a.ID>=b.ID group by a.ID,a.Name,a.Memo having count(1)=1   
  13.   
  14. 方法5:  
  15. select * from #T a group by ID,Name,Memo having ID=(select min(ID)from #T where Name=a.Name)  
  16.   
  17. 方法6:  
  18. select * from #T a where (select count(1) from #T where Name=a.Name and ID<a.ID)=0  
  19.   
  20. 方法7:  
  21. select * from #T a where ID=(select top 1 ID from #T where Name=a.name order by ID)  
  22.   
  23. 方法8:  
  24. select * from #T a where ID!>all(select ID from #T where Name=a.Name)  
  25.   
  26. 方法9(注:ID为唯一时可用):  
  27. select * from #T a where ID in(select min(ID) from #T group by Name)  





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值