我在oracle数据库中有一个名为customer的表。现在我必须从客户表中选择这样的数据。
ID Name Address DOB
1 Ram goa 2/2/1988
2 Rahul ktm 3/3/1987
3 Hari pkr 4/4/1986
TOTAL 3
使用表中的select查询获取数据没有问题。但是我在显示总计数方面遇到了问题。我只需要使用查询显示。请尽快帮忙。
提前谢谢......
答案 0 :(得分:1)
您也可以在NUM_ROWS
oracle
SELECT NUM_ROWS FROM ALL_TABLES WHERE TABLE_NAME = table_name;
或者您也可以尝试使用COUNT
SELECT COUNT(*) AS TOTALROWS FROM tablename;
如果您希望select all rows
值与count
一起使用,请尝试
SELECT ID,Name,Address,DOB,COUNT(*) as TOTALROWS
FROM tablename;
您可以使用Union All
或Union
select ID,Name,Address,DOB from tablename
union all
select 'Toal','','',count(*) from tablename;
或
select ID,Name,Address,DOB from tablename
union
select 'Toal','','',count(*) from tablename;
希望它有效。
答案 1 :(得分:0)
为了显示您应该使用的总行数:
SELECT COUNT(*) AS TOTAL FROM customers
如果您尝试使用单个选择查询来显示内容,并在其下方显示内容总量,则无法使用SQL或非常不正确地使用SQL。您的查询具有不同的列,这足以确定它无法在单个查询中完成。
如果您希望将数据放在单独的列中,可以这样做:
SELECT *
FROM customers,(SELECT COUNT(*) AS TOTAL FROM CUSTOMERS)
会将总列添加到查询输出中。
对于或单个SELECT查询:
SELECT id,name,address,dob,COUNT(*) as TOTAL
FROM customer
查看小提琴的完整代码: Fiddle
答案 2 :(得分:0)
试试这个
select ID ,Name ,Address ,DOB, count(*)
from mytable
group by rollup((ID ,Name ,Address ,DOB))