2017-05-30 26 views

Odpowiedz

2

Można użyć DEFAULT funkcję:

SELECT * 
FROM table 
WHERE IFNULL(column_name, DEFAULT(column_name)) <> DEFAULT(column_name); 
+0

dowiedziałem 1 więcej funkcji dzisiaj. –

0

spróbuje użyć rows.count że to pomoże Ci wiedzieć, czy tabela jest zerowy lub zatem zawierać tę samą wartość.

0

Można użyć DEFAULT function w MySQL:

SELECT * FROM grouptable WHERE column_name is NOT NULL and column_name <> DEFAULT(column_name) 
0

Można skorzystać z information_schema.COLUMNS stołowych znaleźć wartości domyślnych w tym wszystkim definicji tabeli.

Tabela Próbka

CREATE TABLE `Matches` (
    `FootballerName` varchar(100) DEFAULT NULL, 
    `Goal` int(11) DEFAULT '5', 
    `Tournament` varchar(100) DEFAULT NULL 
) ; 

Surowe dane do tabeli

insert into Matches(FootballerName,Goal,Tournament) 
select 'Messi ', 3 ,'La liga' union 
select 'Ronaldo ', 5 ,'UEFA' union 
select 'Surez ', 2 ,'La liga'; 

Wymagane Query osiągnąć wymagane.

SELECT * FROM Matches WHERE Goal not in(
select COLUMN_DEFAULT from information_schema.COLUMNS where TABLE_NAME='Matches' 
and COLUMN_NAME='Goal'); 

Możesz przeczytać więcej o "information_schema.COLUMNS" here