sql查询数据库中符合条件的数据

假设表中有x,y两个字段,对应圆的方程(x-a)²+(y-b)²=r²。a,b,r是确定的值。那如何用sql语句查询符合条件(在这个园范围内... 假设表中有x,y两个字段,对应圆的方程(x-a)²+(y-b)²=r²。a,b,r是确定的值。那如何用sql语句查询符合条件(在这个园范围内)的x,y? 展开
 我来答
frogley
推荐于2016-09-04 · TA获得超过1854个赞
知道小有建树答主
回答量:1008
采纳率:50%
帮助的人:1081万
展开全部

直接把公式写到where条件里就行了啊

select x,y 
from 表名 
where (x-a)*(x-a)+(y-b)*(y-b)<=r*r
更多追问追答
追问
那如果我的a,b是要外面传入的。比如说
double a = d.getA();
double b = d.getB();
String sql="select x,y from t_callcarinfo
where (x-a)*(x-a)+(y-b)*(y-b)<=r*r";
这个a和b要怎么填到里面去是不会错的呢?
追答

C#是这样:

//创建SqlCommand对象
SqlCommand cmd = conn.CreateCommand();             
cmd.CommandType = CommandType.Text;
//构造sql语句
cmd.CommandText = "select x,y from t_callcarinfo where (x-@a)*(x-@a)+(y-@b)*(y-@b)<=@r*@r";  
//给参数sql语句的参数赋值
cmd.Parameters.Add("@a", SqlDbType.Double);cmd.Parameters["@a"].Value = a;        
cmd.Parameters.Add("@b", SqlDbType.Double);cmd.Parameters["@b"].Value = b;          
cmd.Parameters.Add("@r", SqlDbType.Double);cmd.Parameters["@r"].Value = r;

           

光点科技
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件... 点击进入详情页
本回答由光点科技提供
百度网友dd951e4
2015-04-29 · 超过46用户采纳过TA的回答
知道小有建树答主
回答量:107
采纳率:100%
帮助的人:80.4万
展开全部
如果存放x,y的表叫做 roundxy,那么SQL是这样滴:

select *
from roundxy
where power((x-1),2)+power((y-1),2)=power(1,2)
追问
那如果我的a,b是要外面传入的。比如说
double a = d.getA();
double b = d.getB();
String sql="select * from t_callcarinfo
where power((slongitude-?),2)+power((slatitude-?),2)=power(1,2)";
这个a和b要怎么填到?那里去是不会错的呢?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式