c#中 SQL查询不重复字段值的语句
想查找“c”字段为不重复值的所有内容(整个行全部字段),怎么个语句?或者查找“c”字段为不重复值的几个字段(几个字段值),怎么查询?问题补充:比方selectdistin...
想查找“c”字段为不重复值的所有内容(整个行全部字段),怎么个语句?
或者查找“c”字段为不重复值的几个字段(几个字段值),怎么查询?
问题补充:比方select distinct c from s57 查到的是1,2,3,4
如何查到c为1,2,3,4的全部字段如 a b c
x x 1
x x 2
x x 3
x x 4
或者查找指定的字段如查找c不重复值的a,c字段 如 a c
x 1
x 2
x 3
x x 4 展开
或者查找“c”字段为不重复值的几个字段(几个字段值),怎么查询?
问题补充:比方select distinct c from s57 查到的是1,2,3,4
如何查到c为1,2,3,4的全部字段如 a b c
x x 1
x x 2
x x 3
x x 4
或者查找指定的字段如查找c不重复值的a,c字段 如 a c
x 1
x 2
x 3
x x 4 展开
5个回答
展开全部
SQL GROUP BY 语句
s57 有a,b,c字段
如查c字段不重复的语句为
select c from s57 GROUP BY c
GROUP BY 语句
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
SQL GROUP BY 语法
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
SQL GROUP BY 实例
我们拥有下面这个 "Orders" 表:
O_Id OrderDate OrderPrice Customer
1 2008/12/29 1000 Bush
2 2008/11/23 1600 Carter
3 2008/10/05 700 Bush
4 2008/09/28 300 Bush
5 2008/08/06 2000 Adams
6 2008/07/21 100 Carter
现在,我们希望查找每个客户的总金额(总订单)。
我们想要使用 GROUP BY 语句对客户进行组合。
我们使用下列 SQL 语句:
SELECT Customer,SUM(OrderPrice) FROM Orders
GROUP BY Customer
结果集类似这样:
Customer SUM(OrderPrice)
Bush 2000
Carter 1700
Adams 2000
很棒吧,对不对?
让我们看一下如果省略 GROUP BY 会出现什么情况:
SELECT Customer,SUM(OrderPrice) FROM Orders结果集类似这样:
Customer SUM(OrderPrice)
Bush 5700
Carter 5700
Bush 5700
Bush 5700
Adams 5700
Carter 5700
上面的结果集不是我们需要的。
那么为什么不能使用上面这条 SELECT 语句呢?解释如下:上面的 SELECT 语句指定了两列(Customer 和 SUM(OrderPrice))。"SUM(OrderPrice)" 返回一个单独的值("OrderPrice" 列的总计),而 "Customer" 返回 6 个值(每个值对应 "Orders" 表中的每一行)。因此,我们得不到正确的结果。不过,您已经看到了,GROUP BY 语句解决了这个问题。
GROUP BY 一个以上的列
我们也可以对一个以上的列应用 GROUP BY 语句,就像这样:
SELECT Customer,OrderDate,SUM(OrderPrice) FROM Orders
GROUP BY Customer,OrderDate
s57 有a,b,c字段
如查c字段不重复的语句为
select c from s57 GROUP BY c
GROUP BY 语句
GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
SQL GROUP BY 语法
SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
SQL GROUP BY 实例
我们拥有下面这个 "Orders" 表:
O_Id OrderDate OrderPrice Customer
1 2008/12/29 1000 Bush
2 2008/11/23 1600 Carter
3 2008/10/05 700 Bush
4 2008/09/28 300 Bush
5 2008/08/06 2000 Adams
6 2008/07/21 100 Carter
现在,我们希望查找每个客户的总金额(总订单)。
我们想要使用 GROUP BY 语句对客户进行组合。
我们使用下列 SQL 语句:
SELECT Customer,SUM(OrderPrice) FROM Orders
GROUP BY Customer
结果集类似这样:
Customer SUM(OrderPrice)
Bush 2000
Carter 1700
Adams 2000
很棒吧,对不对?
让我们看一下如果省略 GROUP BY 会出现什么情况:
SELECT Customer,SUM(OrderPrice) FROM Orders结果集类似这样:
Customer SUM(OrderPrice)
Bush 5700
Carter 5700
Bush 5700
Bush 5700
Adams 5700
Carter 5700
上面的结果集不是我们需要的。
那么为什么不能使用上面这条 SELECT 语句呢?解释如下:上面的 SELECT 语句指定了两列(Customer 和 SUM(OrderPrice))。"SUM(OrderPrice)" 返回一个单独的值("OrderPrice" 列的总计),而 "Customer" 返回 6 个值(每个值对应 "Orders" 表中的每一行)。因此,我们得不到正确的结果。不过,您已经看到了,GROUP BY 语句解决了这个问题。
GROUP BY 一个以上的列
我们也可以对一个以上的列应用 GROUP BY 语句,就像这样:
SELECT Customer,OrderDate,SUM(OrderPrice) FROM Orders
GROUP BY Customer,OrderDate
展开全部
如果这个表里面有 3个字段 一个是 a,b,c
你可以用这么查啊。
select distinct c,a,b from s57 就行了啊。
你可以用这么查啊。
select distinct c,a,b from s57 就行了啊。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把查询出来的数据集放到datatable中,然后使用for循环,大致思想如下:
for(int
i=0;i<dt.rows.count;i++)
{
str[i]=dt.rows[i]["颜色名称"].tostring();
}
for(int
i=0;i<dt.rows.count;i++)
{
str[i]=dt.rows[i]["颜色名称"].tostring();
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
查不到。
如果表中c=1时,表中每条记录a,b都一样情况下可以查出一条来。如果这个条件不满足,那就查不出来
如果表中c=1时,表中每条记录a,b都一样情况下可以查出一条来。如果这个条件不满足,那就查不出来
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select distinct c,b,a from s57
这里只能让带有distinct的字段在第一列。
这里只能让带有distinct的字段在第一列。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询