MySql显示名称&amp;分数为10或更高的用户的数据,但只有分数<1的用户的名称10

时间:2013-05-25 16:32:32

标签: php mysql

从表see here中,如何为分数为10或更高的用户选择和显示名称和数据,但仅显示分数为&lt;的用户的名称。 10,之间没有使用php?

我知道我可以在php(我这样做)中做到这一点,但有没有一种纯粹的mysql方法可以做到这一点?

Php way

if($score >=10) {echo $name $data} else {echo $name}

1 个答案:

答案 0 :(得分:2)

您可以使用IFCASE CASE更友好的RDBMS )通过查询直接进行此操作

SELECT  Name,
        IF(score < 10, '', score) score,
        IF(score < 10, '', data) data
FROM    json

输出

╔════════╦═══════╦══════════════════╗
║  NAME  ║ SCORE ║       DATA       ║
╠════════╬═══════╬══════════════════╣
║ Peter  ║    50 ║ Peter's Foo data ║
║ James  ║    10 ║ James's Foo data ║
║ John   ║       ║                  ║
║ Andrew ║       ║                  ║
╚════════╩═══════╩══════════════════╝