作者:哎哟不错哦凉皮 | 来源:互联网 | 2022-12-09 19:47
我有如下查询:
SELECT
lp - prev_close_price AS ch,
(lp - prev_close_price) / prev_close_price AS chp,
short_name,
exchange,
description,
lp,
IFNULL(ask, 0) AS ask,
IFNULL(bid, 0) AS bid,
IFNULL(ask - bid, 0) AS spread,
IFNULL(open_price, prev_close_price) AS open_price,
IFNULL(high_price, prev_close_price) AS high_price,
IFNULL(low_price, prev_close_price) AS low_price,
prev_close_price,
volume
FROM
metaTQEjY,
lpTQEjY,
askTQEjY,
bidTQEjY,
open_todayTQEjY,
highlowTQEjY,
prevcloseTQEjY;
它返回0行,而所有表肯定都有值.
然后我试了这个
SELECT
prevcloseTQEjY.prev_close_price
FROM
metaTQEjY,
lpTQEjY,
askTQEjY,
bidTQEjY,
open_todayTQEjY,
highlowTQEjY,
prevcloseTQEjY;
仍然是0行.但
SELECT
prevcloseTQEjY.prev_close_price
FROM
prevcloseTQEjY;
正确返回prev_close_price.为什么会这样?
1> Radim Bača..:
您正在执行这些表的笛卡尔积.如果其中一个为空,则会得到一个空集.