草庐IT

行人计数

全部标签

mysql - 为什么 MySQL 对简单查询的计数不正确?

我有以下查询:SELECTCOUNT(resource_id)ASnumFROMresources_authorsWHEREauthor_id=1657这将返回正确的结果“75”。如果我将查询更改为仅搜索不同的ID:SELECTCOUNT(DISTINCTresource_id)ASnumFROMresources_authorsWHEREauthor_id=1657我得到较低的结果“74”,这是不正确的。但是,该表作为resource_id的唯一索引,我已经检查并仔细检查没有重复数据。例如,我运行过:SELECTresource_id,COUNT(resource_id)AScFRO

java - 条件生成器分组依据和计数不起作用

这是我要实现的查询:SELECT*FROMROOMENTITYRJOINCALENDARENTITYCONR.id=C.room_idWHEREC.available=TRUEANDC.dateBETWEEN:checkinAND:checkoutGROUPBYC.room_idHAVINGCOUNT(C.room_id)>=diffdays这是我的代码:manager=factory.createEntityManager();booleanhasPredicates=false;finalCriteriaBuildercriteriaBuilder=manager.getCrite

mysql - 在mysql中的单行中显示数字和非数字列值的计数

我有一个表测试,其中的列名既有整数值也有非整数值+------------+|names|+------------+|123||123abc||89||dkkjdk||dkdn|+------------+我想像这样在一行中显示整数和非整数值的计数integer_countnon_integer_count23我尝试使用此查询打印整数值selectcast(namesassigned)asint_valfromtest;但是我得到了这个结果+---------+|int_val|+---------+|123||123||89||0||0|+---------+名称字段是一个varc

php - 计数 SQL 语法 COUNT(value) 多列

你好,我正在尝试了解sql中的计数,但我什至无法计算某个值在特定列中出现了多少次我的数据库结构是这样的。(表:自然)ID|one|two|three|1|34|45|80|2|41|34|7|3|7|18|22|4|8|7|45|我正在尝试这个$result=mysql_query("SELECTCOUNT(one)AStotalFROMnaturalWHEREone=7")ordie("Error:".mysql_error());$data=mysql_fetch_assoc($result);echo$data['total'];但即使只有1列,我也无法得到结果..我需要的是计算

mysql - 在 MySQL 中实现计数器字段的最佳方法是什么

我想开始计算网页被查看的次数,因此需要某种简单的计数器。执行此操作的最佳可扩展方法是什么?假设我有一个表Frobs,其中每一行对应一个页面-一些明显的选项是:有一个unsignedintNumViews字段在Frobs表中使用UPDATE在每个View上更新FrobsSETNumViews=NumViews+1。很简单,但据我所知不太擅长缩放。有一个单独的表FrobViews为每个View插入一个新行。显示查看次数,然后您需要执行一个简单的SELECTCOUNT(*)ASNumViewsFROMFrobViewsWHEREFrobId='%d'GROUPBYFrobId。这不涉及任何更

mysql - 从表中计数,但在某个数字停止计数

MySQL中是否有一种方法可以从表中COUNT(*),如果数字大于x,它将停止计数?基本上,我只想知道从查询返回的记录数是多于还是少于特定数。如果它大于该数字,我真的不在乎有多少行,如果它更少,请告诉我数量。我已经能够像这样捏造它了:--letxbe100SELECTCOUNT(*)FROM(SELECT`id`FROM`myTable`WHEREmyCriteria=1LIMIT100)AStemp...但我想知道是否有一些方便的内置方法可以做到这一点?感谢您的建议,但我应该更清楚这个问题背后的原因。它从几个连接表中进行选择,每个表都有数千万条记录。使用索引条件运行COUNT(*)仍

mysql - 在mysql中选择多个计数

在MySQL中是否可以做这样的事情:SELECTCOUNT(*)astotalcount,COUNT(*)WHEREfooISNULLasconditional_countFROMbaz即在一次选择中获得两项计数,一项是所有内容,一项是匹配WHERE子句的事物? 最佳答案 如果您的数据库支持CASEWHEN语句,这将起作用,否则您仍然会了解基本概念。SELECTCOUNT(*),SUM(CASEWHENFOOISNULLTHEN1ELSE0END)ASCOUNT_CONDITIONALFROMbaz

mysql - SQL 在计数和分组依据中使用 CASE

我正在使用CASE对表中的数据进行分类并对其进行计数,但结果不准确现场演示[here]selectDATE(date)asday,count(*),count(distinctcasewhenname='fruit'then1else0end)asfruits,count(distinctcasewhenname='vege'then1else0end)asvege,count(distinctcasewhenname='sweets'then1else0end)assweetsfromfoodgroupbydaywithrollup我不确定问题是出在CASE上还是出在与=匹配的字符串

条件为真时的总计数和计数的SQL

我有一个用户表,我正在尝试提出一个查询,该查询返回按日期分组的所有用户的总数以及按日期分组的特定客户的用户总数。这是我到目前为止所拥有的,其中有按日期分组的用户总数,但似乎无法弄清楚如何获得user.client_id=x的用户数SELECTuser.created,COUNT(user.id)ASoverall_countFROMuserGROUPBYDATE(user.created)尝试这样的行结果:[created]=>2010-05-1519:59:30[overall_count]=>10[client_count]=>(somefractionofoverallcount

mysql - 从众多后端减少存储在主服务器上的货币余额? (分布式计数器,嗯?)

我有一些后端服务器位于两个不同的数据中心(美国和欧洲)。这些服务器只是根据CPM转换广告。除此之外,我还有一个又大又胖的主控MySQL服务器,为广告商的广告事件的资金余额提供服务。同样,所有广告事件均按CPM转换。对于从任何后端提供的每次展示,我都必须根据展示价格减少广告事件的资金余额。例如,每次展示的价格为1美分。后端A已交付50次展示,并将减少50美分的货币余额。支持B已交付30次展示,它将减少30美分的货币余额。所以,我看到的主要问题是:后端每秒提供大约2-3K次展示。因此,恕我直言,在MySQL中动态减少资金余额并不是一个好主意。后端位于美国和欧盟数据中心。MySQL主服务器位