SQL从一行获取特定数据的第一个实例

时间:2015-05-31 21:48:58

标签: java mysql sql jdbc

所以我有一个看起来像这样的SQL表  enter image description here

我正在尝试使用p1Name,p2Name等将玩家名称插入到第一个Empty实例中,并将其插入tableNumber tableNumber=minTable我{s}所以我真的是新手这可能是错的,但我对如何做到这一点很困惑。 这就是我试过的......

sql = "SELECT * as slot FROM Tables "
                                + "WHERE p1Name = 'Empty'" 
                                + " OR p2Name = 'Empty'"
                                + " OR p3Name = 'Empty'"
                                + " OR p4Name = 'Empty'"
                                + " OR p5Name = 'Empty'"
                                + " OR p6Name = 'Empty'"
                                + "AND tableNumber = '" + minTable + "'";

它给了我一个没有细节的sql异常错误,所以我不确定我在这里做错了什么,如果有任何人有任何见解,将会非常感激。

1 个答案:

答案 0 :(得分:0)

试试这个:

sql = "SELECT * FROM Tables WHERE"
                            + "( p1Name = 'Empty'" 
                            + " OR p2Name = 'Empty'"
                            + " OR p3Name = 'Empty'"
                            + " OR p4Name = 'Empty'"
                            + " OR p5Name = 'Empty'"
                            + " OR p6Name = 'Empty' )"
                            + " AND tableNumber = '" + minTable + "'";

像这样的东西。 '*'字符表示“全部”。所以解释是:

  

SELECT ALL DATA FROM TABLES WHERE (col1 ='x'或col2 ='y'OR ..)AND coln ='x'