mysql - 内部查询错误,其中内部查询独立运行时不会产生错误

标签 mysql inner-query

以下是我的查询,此查询给了我以下错误 Unknown column 'package_id' in 'where clause

insert into company_packages(
     package_product_id
    ,product_id
    ,company_id
    ,user_id
    ,expiry_date
    ,discount) 
values(
     (select id from package_products 
     where package_id=1 and product_id=5 and status=1 limit 1)
    ,5
    ,111
    ,116
    ,'2015-06-10'
    ,0)

但是当我运行这个内部查询时我没有得到任何错误

select id from package_products 
where package_id=1 and product_id=5 and status=1 limit 1

最佳答案

改为此查询

INSERT INTO company_packages(package_product_id,product_id,company_id,user_id,expiry_date,discount) 
SELECT id, 5, 111, 116, '2015-06-10', 0 
FROM package_products 
WHERE package_id=1 AND product_id=5 AND status=1 
LIMIT 1

关于mysql - 内部查询错误,其中内部查询独立运行时不会产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27404277/

相关文章:

mysql - 我应该添加额外的日期列吗?

mysql - BASH - 操作 URL

subquery - FROM 语句的 Apache Impala 内部查询限制

sql - 在更新语句中使用当前行

MySQL Sum + 同一表中的内部查询

php - 尝试在 MYSQL 中执行 SELECT 语句但不起作用

mysql - SQL 字符串文字十六进制键到二进制和返回

python - 根据行中的索引过滤一组数据

sql - 在同一张 table 上的内部查询-有更好的方法吗?