フィールド演算画面に「式」と「関数エディタ」の2つのタブがあります。
初期では、「式」の方はQGIS組み込み関数が表示され、それを使えるような形です。組み込み関数の場合、QGIS独自の構文になっています。ご質問にあったifの例から言うと、ヘルプを見ると次のような形で使われます。
if( 1+1=2, 'Yes', 'No' ) → 'Yes'
組み込み関数は内部的にPythonで書いてあるのか、C++で書いてあるのかわかりませんが、Pythonで書いた関数と思えば理解しやすいと思います。この「式」のタブでは使用できるのが関数のみのため、Pythonのif文はここでは使えないわけです。
一方、「関数エディタ」のタブでは、Pythonによる独自の関数を作れます。このタブに切り替えした場合、if文も含め、Pythonの文法そのまま使えます。
IfTestという関数を作成する例の手順は以下のようになります。
1.【新しいファイル】ボタンを押す
2.IfTesterというファイル名を付ける(名前は任意で結構、日本語を避けたほうがいい)
3. 独自な関数を定義
from qgis.core import *
from qgis.gui import *
@qgsfunction(args='auto', group='Custom')
def IfTest(value1, value2, feature, parent):
if len(value1) > len(value2):
return 1
else:
return 2
4.読み込みボタンを押す
5.「式」タブに切り替えする
6.IfTestで検索するとIfTest関数が利用できるようになるのが分かると思います。
IfTest(フィールド1,フィールド2)のような使い方になります。
関数の作成方法について、【新しいファイル】を作成した後QGISでは自動的に例が表示されます。それを参考して作成すればいいと思います。
ですので、以上のように、フィールド演算はどの言語が利用されていると言うと、やっぱりPythonだと思います。(私当初の回答を訂正致します)