public static SearchInput CreateSearchInput(string input)
var inputSplitted = input.Trim().Split(new [] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
if (int.TryParse(inputSplitted.First(), out number))
searchText = String.Join(" ", inputSplitted.Skip(1));
var searchInput = new SearchInput()
Number = number.ToString(),
TitleOrBoard = searchText
public static string ConstructSearchQuery(SearchInput searchInput)
StringBuilder sb = new StringBuilder("SELECT * FROM Books WHERE");
sb.AppendFormat(" ([Title] LIKE '%{0}%' OR [Board] LIKE '%{0}%')", searchInput.TitleOrBoard);
if (!String.IsNullOrWhiteSpace(searchInput.Number))
sb.AppendFormat(" OR Class = '%{0}%'", searchInput.Number);
public string TitleOrBoard { get; set; }
public string Number { get; set; }
public static void Main()
string input = "9 English";
var searchInput = CreateSearchInput(input);
string sqlQuery = ConstructSearchQuery(searchInput);
Console.WriteLine("Search: Number[{0}] TitleOrBoard[{1}]", searchInput.Number, searchInput.TitleOrBoard);
Console.WriteLine("SQL Query: {0}", sqlQuery);