拆分SELECT

时间:2017-11-11 18:25:37

标签: sql sql-server

我正在尝试获取所有记录,其中我的列与:连接。

SELECT serName FROM tblService WHERE serBqtID=1;

表中存储的数据如下:

serName             serStatus
-------             ---------
catering            Available
Stage               Available
Projector           Available
Segreg:extra        Available
DJ:extra            Available

我希望通过从查询中的列中删除:extra来获得以下结果:

serName             serStatus
-------             ---------
Segreg              Available
DJ                  Available

我不确定我的上述查询应该怎么做。

任何帮助都将非常感谢!

2 个答案:

答案 0 :(得分:1)

对于SQL Server,您可以这样做:

select left(t.serName, charindex(':', t.serName + ':') - 1) as serName, . . .
from tblService  t
where t.serBqtID = 1 and t.serName like '%:%';

您可以使用以下方式找到列:

select t.*
from tblService t
where t.serBqtID = 1 and t.serName like '%:%';

问题的原始标记是MySQL,您可以使用substring_index()

select substring_index(t.serName, ':', 1) as serName, . . .
from tblService  t
where t.serBqtID = 1 and t.serName like '%:%';

答案 1 :(得分:1)

对于MS-SQL使用:

mClient = new MongoClient(connectionString);
db = mClient.getDatabase("Your Database Name");

tableCollection = db.getCollection("Your Table Name");
whereQuery = new Document();

whereQuery.put("Your Attribute", typeCB.getSelectedItem().toString());
iterator=tableCollection.find(whereQuery);
cursor = iterator.iterator();

while (cursor.hasNext()) 
{
      /*put your code here*/
}