Замените нулевое значение с помощью инструкции select для ms access

#sql #ms-access-2007

#sql #ms-access-2007

Вопрос:

 SELECT A.CABLE_NO,A.LOC_A,A.LOC_B, iif(isnull(B.LENGTH,'SITE',B.LENGTH) AS CABLE_LENGTH
FROM TABLE_A AS A, TABLE_B AS B
WHERE A.id =B.id  
  

Я хотел бы изменить приведенный выше код, чтобы использовать его с MS Access / JET database engine,

Таблица A содержит номер кабеля и местоположение a и b столбец местоположения, в то время как таблица B содержит длину, часть поля длины пуста, т.Е. null Я хотел бы заменить NULL значение на SITE в результате запроса.

Комментарии:

1. Вам не хватает круглой скобки. iif(isnull(B.LENGTH), ‘SITE’,B.LENGTH) КАК CABLE_LENGTH

2. Это должно сработать, если предположить, что вы исправите проблему с Parens, на которую указал @Jenn. Или вы просто используете NZ(B.LENGTH,'SITE')

3. Спасибо, что указали на глупую ошибку, еще раз спасибо

Ответ №1:

 SELECT A.CABLE_NO,A.LOC_A,A.LOC_B,
    ISNULL(B.LENGTH,'SITE') AS CABLE_LENGTH
FROM TABLE_A AS A, TABLE_B AS B
WHERE A.id =B.id