Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MySQL:定义变量时选择所有字段?_Mysql_Sql - Fatal编程技术网

MySQL:定义变量时选择所有字段?

MySQL:定义变量时选择所有字段?,mysql,sql,Mysql,Sql,非常简单的概念。我根据生成行的日期(X天前)选择特定行,并按时间范围组织它们(在本例中,变量为OVERDUEDAYS)。我现在遇到的唯一问题是定义Overduedys,并选择整行内容,而不必在select语句中定义每一列 毫无疑问(这是我希望实现的目标): 当您删除通配符并手动定义每个列时,查询效果非常好。。。但这是很多专栏,我想不惜一切代价避免。建议?当前查询有什么错误?@peter.petrov我收到一个语法错误。没有任何特定内容。MySQL服务器版本,以获取正确语法,以便在发票中使用“*”

非常简单的概念。我根据生成行的日期(X天前)选择特定行,并按时间范围组织它们(在本例中,变量为OVERDUEDAYS)。我现在遇到的唯一问题是定义Overduedys,并选择整行内容,而不必在select语句中定义每一列

毫无疑问(这是我希望实现的目标):


当您删除通配符并手动定义每个列时,查询效果非常好。。。但这是很多专栏,我想不惜一切代价避免。建议?

当前查询有什么错误?@peter.petrov我收到一个语法错误。没有任何特定内容。
MySQL服务器版本,以获取正确语法,以便在发票中使用“*”,其中(DATE(DATE\u generated)=DATE\u SUB(CURDATE(),在第1行间隔1 D
你能试着用发票替换
*
吗。*?@Paul谢谢你,先生。你耍了个小把戏。到底是什么?听起来不像个混蛋……但你读过我的作品吗?
SELECT * FROM invoices WHERE colunm_id IN (
    SELECT colunm_id FROM invoices WHERE 
        (DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 10 DAY) 
           OR 
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 30 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 45 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 53 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 60 DAY))
           AND 
        (paid=0 AND cancelled=0)
)
SELECT * FROM invoices WHERE colunm_id IN (
    SELECT colunm_id FROM invoices WHERE 
        (DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 10 DAY) 
           OR 
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 30 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 45 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 53 DAY)
           OR
        DATE(date_generated) = DATE_SUB(CURDATE(), INTERVAL 60 DAY))
           AND 
        (paid=0 AND cancelled=0)
)