У меня есть два SQL-запроса:
а.
SELECT (upper(rtrim(ltrim(lastname))) + upper(rtrim(ltrim(firstname))) + 
     upper(rtrim(ltrim(middlename))) + rtrim(ltrim(v)) ) AS userCompareStr 
FROM atable ;
и
В.
SELECT (upper(rtrim(ltrim(lastname))) + upper(rtrim(ltrim(firstname))) + 
      upper(rtrim(ltrim(middlename))) + rtrim(ltrim(v)) ) AS userCompareStr 
 FROM atable  WHERE userCompareStr='GAPYLE1111' ;
У меня есть следующий код:
    Dim sql As String
    Dim conn As OleDbConnection
    Dim cmd As OleDbDataAdapter
    Dim ds As DataSet
    Dim tbl As DataTable
    conn = " something here "
    cmd = New OleDbDataAdapter(sql, conn)
    ds = New DataSet
    cmd.Fill(ds)
    tbl = New DataTable
    tbl = ds.Tables(0)
Рядом, поскольку я могу сказать, что это работает, когда sql установлен в строку A, но не тогда, когда он устанавливает строку B.
Это заставляет меня подозревать, что в предложении есть что-то не так WHERE userCompareStr = 'GAPYLE1111'
Могу ли я использовать псевдоним userCompareStr таким образом? Я не могу найти примеров такого использования, но я нахожу аналогичное использование, когда псевдоним используется для имени таблицы - и я ничего не вижу против такого типа.
