|
|
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
В запросе делаю: select field1, (2/3) as ddd from table1 в поле ddd выдаёт 0 - округляет, но какого... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2002, 19:31:00 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
Правильно, сервер использует тип INT поэтому INT(2)/INT(3) = 0 а select 2.0/3 = 0,66666 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.11.2002, 19:36:49 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
Не всегда так он делит (имею ввиду linked server, причем каждый Linked Server будет вести себя по разному здесь в качестве примера Linked server к Access'у ). Зная, что сервер так делает я разделял поле на три пока не столкнулся вот с этим Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. Причем в предложении where могут возникать такие грабли Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.11.2002, 17:00:08 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
Интересно, а почему select 2.0/3 дает 0.666666666666 , тогда как select 2/3.0 - 0.666666? Кто-нить, подскажите, плз! Частенько упираюсь в точность, приходится гемориться... :((( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2002, 09:44:55 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
Так округлять сразу надо, тогда и с точностью проблем не будет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2002, 09:48:10 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
Округлять-то и не надо! Наоборот... Иногда и восьмой знак ловить требуется, и десятый... Приходится CONVERTами... Мож, какие установки есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2002, 10:00:47 |
|
||
|
Деление, которого я не видел никогда!
|
|||
|---|---|---|---|
|
#18+
2Bzzzzz Интересно, а почему select 2.0/3 дает 0.666666666666 , тогда как select 2/3.0 - 0.666666? Почитайте BOL - Accessing and Changing Relational Data - Transact-SQL Syntax Elements - Using Data Types - Data Type Conversion про Implicit conversions и Transact-SQL Reference - Data Types - Data Type Precedence ЗЫ У меня запросы select 2.0/3 select 2/3.0 выдают совршенно одинаковые результаты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2002, 21:24:10 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32070410&tid=1818486]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 388ms |

| 0 / 0 |
