0
我可以使用單個查詢將列中的值除以查詢中返回的行數嗎?將列中的值除以查詢中返回的行數。它可以在單個查詢中完成嗎?
例如,我從表中選擇基於一些條件的一些數值:
select value from table where ...
比方說,它返回N行,我想通過行數除以返回的值返回:
select value/N from table where ...
它可以用幾個查詢來完成(例如,在第一個查詢之後,我查詢行數並再次執行查詢)。但是,是否可以通過一個帶有SQL技巧的查詢在沒有查詢條件重複的情況下完成,以便可能會複雜的實際選擇(WHERE部分)只運行一次?
可能沒有。 MySQL不支持分析函數(COUNT(*)覆蓋所有行)。你將不得不做一個子查詢計數(這會再次在你的表上運行)。 – 2012-02-06 17:16:31
我正在考慮首先將結果選擇到子查詢中的某個臨時表中,然後對其行進行計數並從中選擇結果,但我不知道是否可以在單個查詢中執行此操作 – Tom 2012-02-06 17:23:33