Строка Mysql столбца начинается со значения другой строки - PullRequest
3 голосов
/ 16 февраля 2010

У меня есть таблица, как показано ниже:

 MyTable
 --------
  A
  B
  C

A, B, C - это столбцы, а MyTable - это имя таблицы, и я хочу выполнить запрос mysql, например:

SELECT MT1.A, MT2.A, MT2.B FROM MyTable MT1, MyTable MT2
       WHERE MT1.B<>MT2.B and MT2.B like "MT1.B%" and MT2.status=0;

Как видно из запроса выше, у меня есть таблица, и я хочу найти столбцы, которые начинаются с другого значения строк и соответствуют условиям. Но приведенный выше запрос, очевидно, завершается неудачно, поскольку mysql принимает строку «MT1.B%», как я могу добиться этого с помощью MySQL?

Ответы [ 2 ]

3 голосов
/ 16 февраля 2010

Вы должны быть в состоянии сделать следующее:

SELECT 
    MT1.A, MT2.A, MT2.B
FROM 
    MyTable MT1, MyTable MT2
WHERE
    MT1.B <> MT2.B AND 
    MT2.B LIKE CONCAT(MT1.B, '%') AND 
    MT2.status = 0
0 голосов
/ 16 февраля 2010
SELECT  MT1.A, MT2.A, MT2.B
FROM    MyTable MT1, MyTable MT2
WHERE   MT1.B<>MT2.B
        AND MT2.B LIKE CONCAT(MT1.B, '%')
        AND MT2.status=0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...