我的MySQL语法有问题。我已经生成了一张真正的飞机飞行和假想的飞机飞行表:
Flight_ID Imaginary 12345678 0 12345678 1 12345678 1 12345678 1 23456789 0 23456789 1 23456789 1 etc......
虚构航班与生成它们的真实航班具有相同的Flight_ID
。 Imaginary
列表示它是真实的0
还是虚构的1
航班。
我需要创建一个名为Type
的新变量,它将指示它是真正的航班,还是option1,option2,option3 ......
我找不到合适的语法来创建这些option1,option2,option3 modalitites。
答案 0 :(得分:1)
试试这个:
SELECT Flight_ID, Imaginary, IF(Imaginary=0, @img:=0, TRUE) ignoreThisCol,
IF(Imaginary=0, 'real flight', CONCAT('option', @img:=@img+1)) flightType ,
IF(Imaginary=0, @curFlight:=Flight_ID, TRUE) ignoreThisCol
FROM flights, (SELECT @curFlight:=0, @img:=0) a
ORDER BY Flight_ID, Imaginary