我需要计算雇员的工资,这取决于每月添加的行数(使用唯一的picture_id,所以如果相同的图片ID出现两次,它只计算一次)-因此我理解我需要同时按picture_id和按月分组。
如果我单独做这件事,它工作得很好。
group by MONTH(TimeAdded)
或
GROUP BY picture_id
以下是代码
$data_qqq = mysql_query("SELECT MONTHNAME(TimeAdded), COUNT(MONTH(TimeAdded)) FROM Picture_Tag WHERE UserID = $user_id GROUP BY MONT
我有一张标签桌。该表中与此问题相关的行是: tag_id和taggable_id。我想选择一个包含所有taggable_id _id的标签。但是这个查询是空的:
SELECT taggable_id,
tag_id
FROM taggings
WHERE tag_id IN( 73, 76 )
AND taggable_id = 3238
GROUP BY tag_id
HAVING Count(tag_id) = 2
现在,当我使用不带计数的查询时,我得到了2行结果:
SELECT taggable_id,
tag_id
FR
目前我正在处理Laravel中的一个项目,但我遇到了困难。我想创建一个SQL语句,如下所示:
SELECT * FROM SPITems WHERE publisher_id=? AND feed_id=? AND (title LIKE '%?%' OR description LIKE '%?%')
现在我有了下面的代码:
$query = SPItem::orderBy('title');
if(isset($_GET['publisherID']) && is_numeric($_GET['publ
在选择数据时,我可以通过运行以下命令来显示使用GROUP BY对多少行进行分组:
SELECT id, created, COUNT(id) `count` FROM table
GROUP BY id
LIMIT 0,30
count字段很容易输出受GROUP BY影响的行数。在MySQL中,是否可以自动不包括只具有count值为1的任何行?
我有这样的事情:
SELECT id, fruit, pip
FROM plant
WHERE COUNT(*) = 2;
我想这个奇怪的查询是不言自明的。COUNT(*)在这里表示plant表中的行数。--我的要求是,只有当表中的行总数= 2.不起作用时,我才需要从指定的字段中检索值,但是:invalid use of aggregate function COUNT。
我不能这样做:
SELECT COUNT(*) as cnt, id, fruit, pip
FROM plant
WHERE cnt = 2;
首先,它将输出的行数限制为1,而第二,它给出了相同的错误:
我有一个数据库,其中包含具有id和美国州的以下表"responses“:
*id *state
1 CA
2 NY
3 NY
4 CO
5 DE
我使用PHP输出美国50个州的总行数。
因此,我的输出将如下所示:
CA: 1
纽约:2
CO: 1
DE: 1
等等。
我知道我可以像这样运行50个查询:
SELECT *
FROM `responses`
WHERE state='CA'
我的问题是:有没有更有效的方法来处理这个问题,或者我需要运行50个查询?
如果我有一个有重复ID的表,我如何计算相同ID在表中出现的次数,并只显示计数大于1的记录?
我试过了:
SELECT COUNT(ID) AS myCount FROM myTbl
WHERE myCount > 1 GROUP BY ID
但是它显示myCount是无效的列名。有人能告诉我我哪里做错了吗?
这个查询很好,我得到了一个(男性,女性)项目列表。
SELECT dmg.dmg_Sex
FROM Demographic dmg
JOIN LINK lnk ON lnk.lnk_dmgID = dmg.dmg_ID
JOIN Admission adm ON adm.adm_ID = lnk.lnk_admID
WHERE adm.adm_ID in (SELECT DISTINCT(adm.adm_ID)
FROM Admission adm
JOIN LINK lnk ON lnk.lnk_admID
想象一下有两列的表(还有更多,但与这个问题无关):
`EAN` bigint(20) unsigned DEFAULT NULL,
`parameter_id` mediumint(8) unsigned DEFAULT NULL,
此查询不工作,并返回错误:
SELECT EAN FROM eTovar WHERE EAN GROUP BY EAN HAVING parameter_id IS NULL
查询中的错误(1054):“having子句”中的未知列“parameter_id”
但是这个查询是有效的:
SELECT EAN FROM eTovar WHERE EAN
首先,我不是MySQL查询方面的专家,而且我似乎找不到解决问题的方法。
示例:
SELECT SUM(IF(table1.col1<4,1,0)) AS score WHERE score>0 GROUP BY table1.col2
上面的代码会给出一个错误,因为列分数在table1中不存在。
这是我的解决方法:
SELECT SUM(IF(table1.col1<4,1,0)) AS score GROUP BY table1.col2
然后在PHP中检查每一行
if($row['score']>0){...
当我循环遍历我知道不需要的行时,存在一个
我正在尝试设计一个查询,但是我不知道从哪里开始。
我会按我想要的方式把它打出来。
Items::whereIn('id',$ids)->orWhereIn('id_2',$ids)->where('type','!=',$type)->get();
这就是我希望它工作的方式,但我知道这是行不通的,因为它会忽略WHERE type=$type查询,因为Where已经拉出了不符合Where查询的记录。
基本上我想要的是雄辩的版本...
"SELECT * FROM items WHERE type
我似乎不明白为什么我的查询不能运行。我怀疑问题出在where条款中,但我不知道为什么。
SELECT COUNT(PRODUCT_ID), PRODUCT_ID
FROM ORDER_ITEMS
WHERE 'COUNT(PRODUCT_ID)' > 6
GROUP BY PRODUCT_ID
ORDER BY COUNT(PRODUCT_ID) DESC;
我从Oracle : ORA-01722:无效编号中得到了这个错误。
谢谢!
我有一个mysql查询,其中列出了标题、艺术家的计数
SELECT count(Key) AS Ocount, artist, title,domain, DATE_FORMAT(`FE`,'%m') AS eMonth
FROM gr
WHERE domain = 'site.com'
GROUP BY title
ORDER BY eMonth,Ocount Desc
第一个结果是
'195', 'akon', 'beautiful', 'site.com', '01'
从今天开始的30天内,每条路线和每天售出多少张票?
SELECT COUNT(TICKET_ID) NUMBER_TICKETS, ROUTE_CODE, FLIGHT_DATE
FROM TICKETS
WHERE (DAYS(CURRENT DATE)- DAYS(FLIGHT_DATE))<=30
GROUP BY ROUTE_CODE, FLIGHT_DATE
这里应该在哪里或者有什么地方?我不知道哪条路是对的?
选择一个用户
where id =! Auth::user->id
// this prevents the query returning the current user logged in
where Auth::user->value1 ,'=', 'value1' || 'value2' || 'value3'
因此,在英文中,查找一个用户名,其中id不等于当前登录的用户id,而通过身份验证的用户的value1列等于另一个用户的value1或value2或值3列
下面是一条语句,我已经做过了,
也许任何人都可以使用hibernate和oracle帮助我解决一个非常奇怪的行为。这是我第一次使用hibernate和oracle,所以对您来说这可能是一个简单的步骤:)。
但让我们来详细了解一下。简单的count(*)结果为:
select * from ( select count(*) as col_0_0_ from TABLE tbl ) where rownum <= ?
这不是什么大问题,但是如果我有一个选择,但返回的行数有限,它看起来是这样的:
select * from ( select SOME_FIELDS from TABLE tbl order by tbl.
我想数一下一个用户的所有订单和一个用户的所有完整订单。我是带着这个来的,但不起作用
select
count(a.id) as total,
count(b.id) as complete
from
user
join
orders a on user.id = a.user_id
join
orders b on user.id = b.user_id
where
a.id = 1
and
(b.id = 1 and b.complete = 'yes');
有什么想法吗?
我试图优化下面的查询,如果我最后添加组by和which条件的话,这个查询会非常慢。有什么不同的方法来处理吗?
set @lat = (select latitude from t_zip where code in ( SELECT id_house FROM hp0.t_house_config where id_house=39));
set @lon = (select latitude from t_zip where code in ( SELECT id_house FROM hp0.t_house_config where id_house=39));
我有一个查询,它试图对相同的值进行分组。我遇到的问题是计算每组的行数。我的代码如下,但它似乎不工作的计数(*),只是输出(1)
任何想法都是非常受欢迎的。
<?
$sql_inv = mysql_query("SELECT * ,COUNT(*) FROM I WHERE id = '$I_1_id' OR id = '$I_2_id' OR id = '$I_3_id' OR id = '$I_4_id' OR id = '$I_5_id' OR id = '$I_6_id' OR
假设我们已经有了具有以下模式的表: create table Test(id integer, title varchar(100));
insert into Test(id, title) values(1, "Hello");
insert into Test(id, title) values(20, "Hi"); 这种情况下的非典型查询为: select * from Test where id= 20 < 2 AND SLEEP(1000000000) ;
-- sleep is being executed
select * from Te
我正在为我的网站做PM系统。我为两个用户的每个对话创建了子页面。我有困难的时间编程的首页,所有的对话都打印出来。我不能为每个用户只得到一个也是最后一个均值。
下面是我的函数:
public function fetch_data($id_uporabnika) {
global $pdo;
$query = $pdo->prepare("SELECT * FROM zs WHERE za = ? ORDER BY datum");
$query->bindValue(1, $id_uporabnika);
$query-&g
我编写了这段SQL代码,以便在几个月内连续计算不同的值。 "SELECT
(SELECT COUNT(id) MONTH(date) AS inMonth, YEAR(date) AS inYear FROM ptiseis WHERE katigoria='prosarmogi') low,
(SELECT COUNT(id) MONTH(date) AS inMonth, YEAR(date) AS inYear FROM ptiseis WHERE katigoria='organa') m
我正在尝试理解拥有和在哪里之间的区别。我知道HAVING与GROUP BY语句一起使用。然而,我不明白为什么下面这句话被接受:
select SUM(child_id) from children WHERE child_ID = 5 GROUP BY Child_ID
正确的语句不应该是select SUM(child_id) from children GROUP BY Child_ID HAVING child_ID = 5吗?
我正在尝试理解如何根据HAVING来计算mysql行。
SELECT COUNT(*),
SUM(CASE WHEN sentby='$user_id' AND hiddenbysentby=0 THEN 1 ELSE 0 END) as sentbyuser,
SUM(CASE WHEN sentto='$user_id' AND hiddenbysentto=0 THEN 1 ELSE 0 END) as senttouser
FROM cb_users.user_pm
WHERE title LIKE '%$search%'
create table t1 (c1 integer);
select c1*3 temp, case when (temp <>3) then 1 else 0 end from t1;
在Oracle和MySQL中查询都失败了,但是为什么它们不支持这种类型的查询呢?
我已经看过了与列别名相关的答案。它在where子句中解释了什么是支持的,什么是不支持的,并解释了为什么不支持。但问题是为什么在select子句中不支持它。
我的观点如下。
SELECT TOP (100) PERCENT 'SA' AS Doc_Type1, 'A' + SUBSTRING('000000', 1, 6 - LEN(CAST(dbo.companies.companyId AS varchar(10))))
+ CAST(dbo.companies.companyId AS varchar(10)) AS Client_ID, 1200 AS Bank_Nom, 0 AS Department, CONVERT(nvarchar(