表pg_report的外关键字inquiryid 关联 pg_inquiry 的id,请输出行为pg_inquiry.username, 列是pg_inquiry.bank_name,统计pg_report的数量
时间: 2024-04-14 17:29:52 浏览: 20
要输出行为pg_inquiry.username,列为pg_inquiry.bank_name,并统计pg_report的数量,可以使用以下SQL查询语句:
```sql
SELECT
i.username,
i.bank_name,
COUNT(r.id) AS report_count
FROM
pg_inquiry i
JOIN pg_report r ON i.id = r.inquiryid
GROUP BY
i.username, i.bank_name;
```
这个查询语句使用了JOIN关键字将pg_inquiry表和pg_report表连接起来,连接条件是pg_inquiry的id与pg_report的inquiryid相等。然后,使用COUNT函数对pg_report的id进行计数,作为列名report_count。最后,使用GROUP BY对username和bank_name进行分组,以实现按照username和bank_name统计report的数量。
请确保表pg_inquiry和pg_report在数据库中已经创建,并且存在相应的字段。如果实际情况有所不同,请相应地调整查询语句和表结构。
相关问题
行为pg_inquiry.username,列为pg_inquiry.bank_name,统计出pg_report中inquiryid 关联 pg_inquiry 的id的条数,并且pg_report.status 为3的结果
要统计出pg_report中inquiryid关联pg_inquiry的id的条数,并且pg_report的status为3,可以使用以下SQL查询语句:
```sql
SELECT
i.username,
i.bank_name,
COUNT(r.id) AS report_count
FROM
pg_inquiry i
JOIN pg_report r ON i.id = r.inquiryid
WHERE
r.status = 3
GROUP BY
i.username, i.bank_name;
```
这个查询语句使用了JOIN关键字将pg_inquiry表和pg_report表连接起来,连接条件是pg_inquiry的id与pg_report的inquiryid相等。然后使用WHERE子句筛选出pg_report的status等于3的记录。接着,使用COUNT函数对pg_report的id进行计数,作为列名report_count。最后,使用GROUP BY对username和bank_name进行分组,以实现按照username和bank_name统计report的数量。
请确保表pg_inquiry和pg_report在数据库中已经创建,并且存在相应的字段。如果实际情况有所不同,请相应地调整查询语句和表结构。
pg_inquiry 表含有 id,username,bank_name,创建日期create_time,请输出mysql的sql语句
非常抱歉,我之前误解了您的问题。您提到的是MySQL数据库而不是PostgreSQL数据库。以下是基于MySQL语法的查询语句,用于统计2023年7月11日的pg_inquiry表中每个username在每个bank_name中的数据条数:
```sql
SELECT username, bank_name, COUNT(*) AS total_count
FROM pg_inquiry
WHERE DATE(create_time) = '2023-07-11'
GROUP BY username, bank_name;
```
该查询语句会筛选出创建日期为2023年7月11日的记录,并按照username和bank_name进行分组,然后统计每个组中的数据条数。结果将会显示每个username在每个bank_name中的数据条数。
请注意,上述查询语句假设pg_inquiry表已经在MySQL数据库中创建,并且create_time字段是一个包含日期和时间的合法MySQL日期时间类型。如果您的实际情况有所不同,请相应地调整查询语句和表结构。