Nie ma funkcji agregującej różnicującej, ale ponieważ wiesz dokładnie, których wierszy użyć, możesz wybrać każdą wartość jako własne podzapytanie, a następnie odjąć dwie kolumny od siebie w jednej instrukcji select.
SELECT a.op, b.op, a.op - b.op as diff
FROM (SELECT 10 as op) a
JOIN (SELECT 8 as op) b
Wyrażony zgodnie z Twoim schematem, prawdopodobnie wyglądałoby to tak:
SELECT a.op, b.op, a.op - b.op as diff
FROM (SELECT P_QTY as op FROM rankhistory WHERE P_QTY = 160) a
JOIN (SELECT P_QTY as op FROM rankhistory WHERE P_QTY = 108) b
Aby jednak regularnie korzystać z tego podejścia w aplikacji, należy obsługiwać je w oparciu o identyfikatory lub coś innego, co można łatwo wybrać i które ma znaczenie.
Wygląda na to, że chcesz czegoś innego. Być może interesuje Cię różnica między wartością maksymalną a minimalną w zakresie dat?
SELECT MAX(P_QTY) - MIN(P_QTY) as diff
FROM rankhistory
WHERE rh_date BETWEEN '1438556400' AND '1438642800'