2009-07-12 2 views
3

Использование Access 2003Как заказать нулевые значения?

В моей колонке таблицы, некоторые из полей равны нулю, некоторые из полей число, и некоторые из полей строки

Таблица.

ID, Value 

001 
002 N/A 
003 01 
004 
005 N/A 
006 02 

Так на ...

Я хочу заказать столик по номеру, строки, то нулевые значения,

запросов,

Выберите ID, значение из таблицы по значению

Ожидаемый результат

ID, Values 

    003 01 
    006 02 
    002 N/A 
    005 N/A 
    001 
    004 

Нужен Запрос Помощь

+0

Какой тип данных является значением? –

+0

@ic - Тип данных - текст – Gopal

ответ

2
SELECT * FROM 
(SELECT *, IIF(Val(Value) > 0, 2, IIF(ISNULL(Value), 3, 1)) AS MyOrder FROM MyTable) 
Order by MyOrder 

EDIT: Я думаю, что это ясно. Изменено по запросу Роберта;)

SELECT * FROM MyTable 
ORDER BY IIF(Val(Value) > 0, 2, IIF(ISNULL(Value), 3, 1)) 
5

Создайте новый запрос, и вставить следующий SQL:

SELECT * 
FROM Table1 
ORDER BY IsNull([Text2]) DESC , Table1.Text2; 

Изменить название в зависимости от обстоятельств.

+0

+1 - это лучше, чем использование инструкции IIF, которая так же неэффективна и медленна, как вы могли догадаться. – Smandoli

+1

Как использовать, я использовал, но он отображается неправильно – Gopal

Смежные вопросы