Si puedes.
Ejemplo, tengo la siguiente tabla:
CREATE TABLE mitabla(
campo_codigo INT NOT NULL,
campo_cantidad INT,
campo_descripcion VARCHAR(30)
)
Si puedes ver mitabla tiene 3 campos, el campo_codigo tiene un "NOT NULL" al momento de haberse creado, esto es, que no aceptara que el campo se quede en blanco y siempre debera de tener un valor entero.
En el campo_cantidad no es "NOT NULL", esto quiere decir que puede o no contener valores, e incluso puede ser NULO.
Ejemplo de INSERT:
INSERT INTO mitabla VALUES ( 1010, 25, 'VALOR DE 25 AL CAMPO CANTIDAD');
INSERT INTO mitabla VALUES ( 1020,,'VALOR NULO AL CAMPO CANTIDAD');
INSERT INTO mitabla VALUES ( 1030, NULL, 'OTRA VEZ VALOR NULO A CANTIDAD');
Puedes ver que en el 2do insert, no se le dio ningun valor al campo_cantidad, automaticamente se supone que sera "NULO" y en el 3ro si se le especifico que seria "NULO".
Para que tu campo pueda almacenar un valor "NULO", no debe de crearce como "NOT NULL". NOT NULL indica que debe haber un valor obligatorio.