这是我获取所需数据的查询。我试图只显示qQuoteDateTime左边的10个字符。但是当我输入左边的函数时,我的引号不能拉下qQuoteDateTime。任何建议或替代函数只能显示一个记录的10个字符?
$query = "select left(qQuoteDateTime,10), symSymbol, symExchange, symName, qLastSalePrice, qPreviousClosePrice, qNetChangePrice,qBidPrice, qNetChangePct, qAskPrice, qTodaysHigh, qTodaysLow, q52WeekHigh, q52WeekLow, qShareVolumeQty
from symbols left outer join quotes on quotes.qSymbol = symbols.symSymbol where qSymbol = {$querysymbol} order by qQuoteDateTime desc limit 1";
答案 0 :(得分:0)
而不是
left(qQuoteDateTime,10)
首先将日期转换为字符串,如下所示:
left(CAST(qQuoteDateTime AS CHAR),10)
如果您想为PHP结果提供一个方便的名称来访问此列,请像这样添加一个标签。
left(CAST(qQuoteDateTime AS CHAR),10) as qQuoteLeft10
这是一个演示:
mysql> select LEFT(CAST(NOW() as CHAR),10) as qQuoteLeft10;
+--------------+
| qQuoteLeft10 |
+--------------+
| 2014-06-02 |
+--------------+
1 row in set (0.04 sec)
以上所有内容都是为了准确回答您的问题。也就是说,有一个更好的方法。因为您将日期存储为MySQL DateTime类型,所以最好使用MySQL的本机日期函数准确地返回您想要的日期。
以下是更好地获取数据的示例:
mysql> select DATE_FORMAT(NOW(),'%Y-%m-%d') as qQuoteLeft10;
+--------------+
| qQuoteLeft10 |
+--------------+
| 2014-06-02 |
+--------------+
1 row in set (0.05 sec)