mysql表的条件语句

时间:2014-03-30 04:52:17

标签: mysql

我有3个这样的sql表:

enter image description here

表1和表2是数据输入,结果见表3.问题不在于总和nilai,而在于coloumn saran。如何用条件语句显示coloumn saran的结果如下:total> = nilai then saran指的是表1中的市长和未成年人。如果总计< nilai那么saran在表2中提到了butuh?

感谢

1 个答案:

答案 0 :(得分:1)

好的,....所以处理我们的小信息,我把一个你想要的工作示例放在一起。我将TOTAL和NILAI添加到Table1,因为我不知道你在哪里存储它。所以你必须做出适当的改变,但这应该可以解决问题。

SELECT 
  m1.NIP,
  m1.BIDANG,
  m1.TOTAL,
  m1.NILAI,
  IF(m1.TOTAL <= m1.NILAI, m2.BUTUH, CONCAT(m1.MAYOR, ',', m1.MINOR)) as SARAN 
FROM myTab1 m1
JOIN myTab2 m2 on m1.BIDANG = m2.BIDANG

参见工作示例: - http://sqlfiddle.com/#!2/e6cb2/10


基本上你要做的是在select中使用那个IF()语句。它说IF(条件,真,假)所以IF(TOTAL&lt; = NILAI然后放入m2.BUTUH其他放入CONCAT(两列MAYOR和MINOR用逗号夹在中间)....


但是,你的问题存在差异。你说如果总&gt; = NILAI然后做table1 MayOR和MINOR或者如果它小于NILAI然后到table2 BUTUH ...问题是你输出的输出是TOTAL&gt; NILAI然后做市长和少数....不是&gt; =。所以我不确定你想要哪一个,可能需要改变。我刚刚输出了输出的数据