Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> НАЙТИ ЗАПИСЬ КОТОРАЯ МАКСИМАЛЬНО ЗАПОЛНЕНА 
:(
    Опции темы
batek
Дата 18.6.2006, 20:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 47
Регистрация: 22.2.2006

Репутация: нет
Всего: нет



Нужно найти запись у которой максимум полей заполнено т.е минимум пустых полей 
PM MAIL   Вверх
Mal Hack
Дата 18.6.2006, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Мудрый...
****


Профиль
Группа: Участник Клуба
Сообщений: 9926
Регистрация: 15.2.2004

Репутация: 11
Всего: 261



Сделать дополнительное поле с кол-вом заполненных полей. Считать программно.  

Это сообщение отредактировал(а) Mal Hack - 18.6.2006, 20:33
PM ICQ   Вверх
Mephisto
Дата 20.6.2006, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: нет
Всего: 34



Какая СУБД?
Если есть возможность можно создать Calc Field. Насколько я знаю такого поля в мускуле нет. smile
Тогда возможно при вставке заполнять его, тобиш:
Код

intesrt into your_table(a,b,c) values  (var1,var2,isnull(var1,'')+isnull(var2,''))

Тип поля Varchar.
Далее делаешь запрос:
Код

select a, b from your_table Order by Len(c) desc
 
PM   Вверх
sergejzr
Дата 20.6.2006, 18:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Un salsero
Group Icon


Профиль
Группа: Админ
Сообщений: 13285
Регистрация: 10.2.2004
Где: Германия г .Ганновер

Репутация: 2
Всего: 360



Модератор: [B]batek, пожалуйста, не пиши названия тем исключительно в верхнем регистре![/B]
 


--------------------
PM WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
skyboy
Дата 20.6.2006, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 14
Всего: 260



batek, если у тебя есть null- значения, значит, база неверно спроектирована. Это раз. А это - два:
Код

SELECT (field1 is null)+(field2 is null)+(field3 is null)+(field4.......) FROM test order by 1 desc
 
PM MAIL   Вверх
GZep
Дата 12.7.2006, 10:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


участник Винграда
***


Профиль
Группа: Завсегдатай
Сообщений: 1528
Регистрация: 7.7.2006
Где: Москва

Репутация: -1
Всего: 32



Такая ситуация, когда нужно произвести выборку 
Цитата
максимум полей заполнено т.е минимум пустых полей
 я считаю неправильна. А именно неправильна сама система в которой должен выполнятся этот запрос.
Т.е. в нормальном скрипте не должна получится такая ситуация, кагда нужно выполнить такой запрос....

Подумай может можно придумать как-нибудь получше??? smile  


--------------------
user posted imageuser posted image
PM MAIL WWW ICQ Skype GTalk   Вверх
BobiKK
Дата 14.7.2006, 09:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 655
Регистрация: 1.12.2005
Где: Essen, Deutschlan d

Репутация: нет
Всего: 16



Цитата(skyboy @  20.6.2006,  18:39 Найти цитируемый пост)
если у тебя есть null- значения, значит, база неверно спроектирована. Это раз.

А что в этом плохого?
У меня есть многие таблицы, в которых нету опции "NOT NULL". И я не особо страдаю. Проверяю на NULL просто функцией isset() 
PM MAIL   Вверх
skyboy
Дата 14.7.2006, 10:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 14
Всего: 260



BobiKK, я не говорю, что плохо. Я считаю, что неверно smile Согласно нормальной форме(фиг  помнит, какой из пяти) в этом случае надо бы клепать отдельную таблицу, в которую заносить только не-null значения. Хотя бы затем, чтоб не надо было вставлять в WHERE отсев только существующих значений. Приведи лучше пример, когда необходимо иметь поля с null-значениями. smile 
PM MAIL   Вверх
BobiKK
Дата 14.7.2006, 11:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 655
Регистрация: 1.12.2005
Где: Essen, Deutschlan d

Репутация: нет
Всего: 16



Я не говорю, что надо иметь NULL или не иметь. Я просто разницы принцпиальной не вижу. Всё зависит от того, как эти значения обрабатываются.
Скажем, если у тебя в таблице стоит DEFAULT 0, а у меня ничего, то конструкции:
if ($sample_assoc_result['sample_field'] == 0) do_nothing();
и
if (!isset($sample_assoc_result['sample_field'])) do_nothing();
эквивалентны. 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Базы Данных | Следующая тема »


 




[ Время генерации скрипта: 0.0750 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.