写sql语句的思路
SQL子查询
概念:子查询是嵌套在一个select语句中的另一个select语句。当需要从一个表中检索信息,
而检索条件值又是来自该表本身的内部数据时,子查询非常有用。 子查询可以嵌套在一下SQL子句中:where子句、having子句和from子句。
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
合计函数:
MIN
返回一个给定列中最小的数值
MAX
返回一个给定列中最大的数值
SUM
返回一个给定列中所有数值的总和
AVG
返回一个给定列中所有数值的平均值
COUNT
返回一个给定列中所有数值的个数
COUNT(*)
返回一个表中的行数
先用图讲解吧
表product_attribute_meta中的id注入到表product_attribute中
如果要实现如下图结果
一般的思路就是从 被注入外键的表中开始 思考。即:表product_attribute表中
即:先把表product_attribute中需要的value字段查出来。
接下来还需要字段 internalname 和 property 因此要用到 表product_attribute_meta表,找根据他们之间的外键注入 将两表联系起来
SELECT pa.`value`,pam.internal_name,pam.property FROM product_attribute pa,product_attribute_meta pam WHERE pa.pro_attr_metaId=pam.id AND productId=1;