Mysql: выберите * из таблицы где седло В (пустой указатель, “”) возможный без ИЛИ

Если вы хотите форматировать разделитель «,» независимо от культуры (например, в сообщении трассировки или журнала), следующий код будет работать и имеет дополнительное преимущество, чтобы сообщить следующему парню, который наткнулся на него точно, что вы .

int integerValue = 19400320; 
string formatted = string.Format(CultureInfo.InvariantCulture, "{0:N0}", integerValue);

устанавливает формат «19,400,320»

25
задан pvgoddijn 27 January 2010 в 14:56
поделиться

1 ответ

SELECT  *
FROM    mytable
WHERE   COALESCE(col, '') = ''

Обратите внимание, однако, что запрос OR будет гораздо более эффективным, если столбец будет проиндексирован:

SELECT  *
FROM    mytable
WHERE   col = '' OR col IS NULL

Это будет использовать ref_or_null путь доступа к индексу.

Если вам нужно выбрать из списка значений вместе с NULLs, просто поместите все ненулевые значения в список и добавьте одно условие OR IS NULL:

SELECT  *
FROM    mytable
WHERE   col IN ('val1', 'val2', 'val3') OR col IS NULL

Это будет использовать индекс на col, а также.

35
ответ дан Quassnoi 28 November 2019 в 21:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: