社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

在mysql中创建一个月内未使用的视频视图

Juan Pablo Clavijo • 3 年前 • 1149 次点击  

再次向社区问好。

这一次,我试图创建一个月内所有未借出视频的视图。该表具有以下结构:

交易 c_id v_id 贷款日期 归还贷款 租金价值 时期
1. 3. 2. 2021-08-10 2021-08-12 10 2021-08

而且它还在不断地被填充。。。

因此,我使用以下代码生成一个视图:

CREATE VIEW `Video not rented` AS 
SELECT  loan.period, loan.v_id, COUNT(*) AS amount
FROM loan 
WHERE amount = 0
GROUP BY loan.v_id;

但我得到了以下错误:

0 146 13:29:13错误代码:1111。0.000秒组函数的使用无效

非常感谢您的帮助

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/133104
 
1149 次点击  
文章 [ 2 ]  |  最新文章 3 年前
Gordon Linoff
Reply   •   1 楼
Gordon Linoff    3 年前

你可以用 left join .假设你有一张视频表:

CREATE VIEW videos_not_rented_this_month
    SELECT v.*
    FROM videos v LEFT JOIN
         loan l
         ON l.v_id = v.v_id AND
            l.loan_date >= curdate() + interval (1 - day(curdate())) day
    WHERE l.v_id IS NULL;   -- videos with no match
nbk
Reply   •   2 楼
nbk    3 年前

奥武夫向大家展示了一段未被借出的视频

CREATE VIEW `Video not rented` AS 
SELECT  loan.period, loan.v_id, COUNT(*) AS amount
FROM loan 
GROUP BY loan.v_id,loan.period
HAVING  amount = 0;

你可以用它来获得最后一个周期

CREATE VIEW `Video not rented` AS 
SELECT  MAX(loan.period), loan.v_id, COUNT(*) AS amount
FROM loan 
GROUP BY loan.v_id
HAVING  amount = 0;