这是情况,我有3个看起来像这样的表.
table foo
type number
a    1
b    2
c    3
d    4
table bar
number shape
1      square
2      circle
3      triangle
4      rectangle
table foobar
shape     colour 
square    red
circle    green
triangle  blue
rectangle yellow
triangle  purple
他们都有我没有列出的独特ID.
我有类型,但我想找到颜色.现在我可以做三个SQL请求来获取它,但由于SQL可能是瓶颈所以我想知道我是否可以将三个SQL请求合并为一个请求.
是否可以执行此操作并且它将比三个单独的SQL请求运行得更快
1将返回红色,3将返回蓝色和紫色.
SELECT fb.colour
FROM foo AS f
INNER JOIN bar AS b ON f.number = b.number
INNER JOIN foobar AS fb ON b.shape = fb.shape
WHERE f.type = "YOURTYPE"
您可以使用   JOINS连接行并使用where子句指定所需的类型.这样做肯定会更快:
SELECT number FROM foo WHERE type="YOURTYPE"
SELECT shape  FROM bar WHERE number="NUMBERRETRIEVEDFROM"
SELECT colour FROM foobar WHERE shape="SHAPE"
| 归档时间: | 
 | 
| 查看次数: | 84 次 | 
| 最近记录: |