这个问题很难解释,但我会尽力而为。我有两张桌子;这是在特定时间
之间的计数列查询 finaltrades
表格结构:
id user_id exchange_id market_id symbol_id buy_datetime sell_datetime buy_rate sell_rate quantities
---- --------- ------------- ----------- ----------- --------------------- --------------------- ---------- ----------- ------------
1 1 1 1 96 2018-05-25 18:13:26 0000-00-00 00:00:00 2205 0 100
2 1 1 1 96 0000-00-00 00:00:00 2018-05-25 18:13:59 0 6680 100
3 4 1 1 23 2018-05-25 18:16:27 0000-00-00 00:00:00 0 0 10
4 1 1 1 96 2018-05-25 18:13:59 0000-00-00 00:00:00 50351 0 30
5 1 1 1 15 0000-00-00 00:00:00 2018-05-25 18:34:46 0 100 150
6 4 1 1 573 2018-05-26 09:29:17 2018-05-27 03:10:09 10 10 10
7 1 1 1 15 2018-05-11 09:30:54 2018-05-25 18:34:56 40 100 40
buy_datetime
表格结构:
sell_datetime
finaltrades
表格中有两列buy_datetime
和sell_datetime
。
从DB::raw('exchanges.start_time')
和public function firstHourTrades(){
$user_id = Auth::user()->id;
$data = DB::table('finaltrade')
->join('exchanges', 'finaltrade.exchange_id', '=', 'exchanges.id')
->select('finaltrade.*')
->where('finaltrade.user_id', $user_id)
->whereTime('finaltrade.LESS-DATE', '>=', DB::raw('exchanges.start_time'))
->whereTime('finaltrade.LESS-DATE', '<=', DB::raw("ADDTIME(exchanges.start_time, '01:00:00')"))
->count();
return response()->json($data);
}
,更短的日期时间,我想将其与sudo tcpdump -A -s 0 'tcp port 4444 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)' -i lo0
进行比较。
{"message":"body"}
14:29:07.725362 IP localhost.64258 > localhost.krb524: Flags [P.],seq 1004:1579, ack 469, win 11768, options [nop,nop,TS val 1448865401 ecr 1448865398], length 575 E..s..@.@..............\...^Z.>...-..h.....
V[.yV[.vPOST /v2/8387efc52b0b6b14e83bcd1d1951bdb2 HTTP/1.1
Content-Type: application/json; charset=utf-8
答案 0 :(得分:0)
我建议使用DB :: raw进行选择
$data = DB::table('finaltrade')
->join('exchanges', 'finaltrade.exchange_id', '=', 'exchanges.id')
->select(\DB::raw('finaltrade.*, IF(finaltrade.buy_datetime<finaltrade.sell_datetime, finaltrade.buy_datetime, finaltrade.sell_datetime) as less_date'))
->where('finaltrade.user_id', $user_id)
->whereTime('less_date', '>=', DB::raw('exchanges.start_time'))
->whereTime('less_date', '<=', DB::raw("ADDTIME(exchanges.start_time, '01:00:00')"))
->count();