[sql] Вопросы по БД

Discussion in 'PHP' started by FraiDex, 25 Feb 2008.

Thread Status:
Not open for further replies.
  1. banality

    banality New Member

    Joined:
    13 Aug 2011
    Messages:
    18
    Likes Received:
    3
    Reputations:
    0
    Kruzak

    не?

    вру, у тебя скорее всего тип поля стоит NULL , поэтому можно сделать :

    Ругнется, но дело должен сделать. После это где был NULL станет 0.
     
    #1721 banality, 16 Jun 2012
    Last edited: 16 Jun 2012
    1 person likes this.
  2. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    спасибо, кстати не ругнулся)
     
  3. Feonor

    Feonor Elder - Старейшина

    Joined:
    23 Jul 2008
    Messages:
    128
    Likes Received:
    52
    Reputations:
    19
    Личный интерес и любопытство :cool:

    MS SQL SERVER 2005

    Пишу update

    Update table1 Set col1 = isnull(col1,0) + 20 * -1 Where ......

    Ожидаю что произойдет замена NULL'ов в col1 на 0, и этого не происходит. Ошибок при выполнении на сервере нет.

    Вопрос: почему запрос "работает" но не "срабатывает"?

    *** если можно ссылку где про это прочитать. в msdn не нашел. если судить по msdn все работать должно..

    ***** ниче не понимаю, на 2008 работает как надо

    ******* я туплю) дело в пятницу было)) все везде работает))
     
    #1723 Feonor, 18 Jun 2012
    Last edited: 18 Jun 2012
  4. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    сколько раз можно добавлять параметры в один sql запрос?
    т.е. допустим сколько раз можно добавлять AND, AND, AND...
    у меня сейчас 170 раз в один запросе, вот интересно какое максимальное число
     
  5. banality

    banality New Member

    Joined:
    13 Aug 2011
    Messages:
    18
    Likes Received:
    3
    Reputations:
    0
    максимальная длина mysql запроса в байтах.
    Его можно изменить в настройках
     
  6. Тилль

    Тилль Elder - Старейшина

    Joined:
    26 May 2006
    Messages:
    44
    Likes Received:
    3
    Reputations:
    0
    Помогите пожалуйста, есть БД, но не работает, там что - то надо удалить, что бы заработало. В ЛС.
     
  7. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    Такой вопрос, делаю запрос

    PHP:
    SELECT (count(id))x from `httpUNION SELECT (count(id))y from `socks
    в ответе получаю только

    а где же
    ?? я неправильно запрос сделал раз его не показывает?
     
  8. Art!P

    Art!P Elder - Старейшина

    Joined:
    22 Jan 2008
    Messages:
    169
    Likes Received:
    28
    Reputations:
    5
    а UNION ALL?
     
    1 person likes this.
  9. cat1vo

    cat1vo Level 8

    Joined:
    12 Aug 2009
    Messages:
    375
    Likes Received:
    343
    Reputations:
    99
    to qaz
    Все выводится нормально, вы выводите одну колонку, вот в ней все и находится, просто у Вас вывод в несколько строк!

    PHP:
    SELECT count(user_idfrom `usersUNION SELECT count(comment_idFROM `guestbook`;
    [​IMG]
     
  10. Art!P

    Art!P Elder - Старейшина

    Joined:
    22 Jan 2008
    Messages:
    169
    Likes Received:
    28
    Reputations:
    5
    а если при UNION значения одинаковые то дубликат удаляется
     
  11. cat1vo

    cat1vo Level 8

    Joined:
    12 Aug 2009
    Messages:
    375
    Likes Received:
    343
    Reputations:
    99
    to Art!P
    count() считает все записи в таблице и дубликаты тоже! Не путайте одно с другим, у нас не вывод из БД!
     
  12. Art!P

    Art!P Elder - Старейшина

    Joined:
    22 Jan 2008
    Messages:
    169
    Likes Received:
    28
    Reputations:
    5
    вообще не про count писал, а про UNION.
    З.Ы. еще добавлю count(user_id) и count(comment_id) в таком виде не засчитают строку с NULL. Для того чтобы учитывались все строки ставят count(*)
     
    #1732 Art!P, 5 Jul 2012
    Last edited: 5 Jul 2012
  13. Kruzak

    Kruzak New Member

    Joined:
    21 Dec 2010
    Messages:
    126
    Likes Received:
    4
    Reputations:
    1
    подскажите пожалуйста как сделать выборку
    есть 2 поля и если они не равны то нужно вывести такие записи

    логика такая WHERE `pole1` != `pole2`
     
  14. Art!P

    Art!P Elder - Старейшина

    Joined:
    22 Jan 2008
    Messages:
    169
    Likes Received:
    28
    Reputations:
    5
    пока вроде правильная логика. Пририсуйте селект и фром. Может даже заработает
     
  15. mironich

    mironich Elder - Старейшина

    Joined:
    27 Feb 2011
    Messages:
    733
    Likes Received:
    73
    Reputations:
    19
    Как cделать auto increment индекс в sqlite версия последняя, если просто прописать при создании табл. auto increment то табл. создастся но auto increment работать не будет, хотелось бы без триггеров и прочего.
    Вот нашел, http://barbitoff.blogspot.com/2011/07/autoincrement-sqlite.html
    Я маленькими буквами и не слитно писал auto increment.
     
    #1735 mironich, 16 Jul 2012
    Last edited: 17 Jul 2012
  16. \/ITA

    \/ITA Member

    Joined:
    21 Sep 2011
    Messages:
    25
    Likes Received:
    28
    Reputations:
    8
    Вопрос такого характера:
    есть таблица в БД MySQL
    в ней 2 поля
    id [int,auto_increment,index]
    и name [varchar]

    в таблице 400 значений
    и у каждого свой уникальный id
    но мне нужно удалить некоторые элементы но так чтобы освободившиеся значения id после этого использовались повторно!

    какие мои действия мб в этом случае?
     
  17. banality

    banality New Member

    Joined:
    13 Aug 2011
    Messages:
    18
    Likes Received:
    3
    Reputations:
    0
    Поле id - primary key?
    Если да, то так как вы пишите удалить нельзя, иначе можно удалить и забить руками ид.
     
  18. Art!P

    Art!P Elder - Старейшина

    Joined:
    22 Jan 2008
    Messages:
    169
    Likes Received:
    28
    Reputations:
    5
    Всё можно.
    Удаляете с помощью DELETE любую строку, добавляете с помощью INSERT INTO конкретные значения. Если ID свободен, если нет то стандартно будет автоинкремент. Но перед тем как добавить конкретный id нужно найти свободные.
    Лучше просто обновлять значения без удаления, но это не всегда можно.
    В обычной практике то что вы просите не нужно. Это не продуктивно когда в базе миллионы строк, такая "сортировка" "мартышкин труд".
     
  19. \/ITA

    \/ITA Member

    Joined:
    21 Sep 2011
    Messages:
    25
    Likes Received:
    28
    Reputations:
    8
    да, я наверное добавлю еще поле del типа boolean, если True то можно перезаписать
    просто проставлю по тем строкам что мне не нужны этот параметр
    а в момент записи буду проверять есть ли в таблице del=True
    всем спасибо!
     
  20. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Art!P Иногда лучше слукавить и сказать - "нельзя!". Иначе человек все таки выстрелит себе в ногу пару раз и вернется с вопросом, почему вы его не остановили.

    \/ITA Из чистого любопытства - зачем вам использовать ID повторно?
     
    _________________________
Thread Status:
Not open for further replies.