Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Помогите сделать селект! Есть таблица со сложным PK (KEYID1, KEYID2, KEYID3, KEYID4, STAMP) Причем KEYID1-BIGINT (не identity) KEYID2-BIGINT (не identity) KEYID3-BIGINT (не identity) KEYID4-BIGINT (не identity) STAMP-дата Таблица содержит такие данные Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Проблема: нужно получить последнюю запись в таблице используя составной ключ (дата идет по наростающей) Т.е. последняя запись была (в таблице стрелочкой указана), нужно получить все значение после нее. Поделитесь опытом плиз!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2010, 16:35 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Вопрос не совсем понятен. Сортировать по группе полей можно так: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2010, 16:51 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Отсортировать то не проблема, проблема сделать выборку по полям, чтобы выселектелись все данные после указанной строки! Т.е. select * from table where [тут условие отбора которое я не знаю как сделать]>[чего-то] в итоге должно выйти Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 01:41 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
условие сортировки напиши пожалуйста там что-то вроде where STAMP >= '24-08-2010' AND NOT ( STAMP = '24-08-2010' AND .... ) но я писал такое, если найду завтра исходник, то покажу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 02:01 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Любопытно. Можете объяснить, что значит "последняя запись"? И как отсортированы записи в вашем примере? Если имеется ввиду порядок их вставки в таблицу, то он не обязан быть постоянным. В таком случае лучше завести поле с отметкой времени вставки строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 04:37 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
BuryCommonerЛюбопытно. Можете объяснить, что значит "последняя запись"? И как отсортированы записи в вашем примере? Если имеется ввиду порядок их вставки в таблицу, то он не обязан быть постоянным. В таком случае лучше завести поле с отметкой времени вставки строки. Опс, сории не так объяснил! Значит так: есть таблица с данными с начала года. Ключ как писал выше составной. Из этой таблицы делаю выгрузку в др. базу, т.е. первая "заливка" забирает все записи что были (допустим до 05.05.2010). Следующая заливка должна забрать все "новые" записи, причем новые записи также могут садиться 05.05.2010-го. Вот я и спрашиваю как выбрать только "новые" записи! Поля отсортированы по ключу, т.е. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 08:40 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Т.е. нужно сделать селект, где Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 08:58 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
qi_ip, ниже код на с++, который формирует where условие как раз для твоего случая. код рабочий 100% думаю, можно понять, что он делает SQL не напишу, потому что SQL я давно забыл, да и времени нет.... Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:24 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
да, ORDER BY вот Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:37 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Можно попробовать следующий вариант 1. есть таблица t1 в БД bd1, есть таблица t2 в БД bd2; перечень колонок одинаков. 2. сделать в БД bd1 nickname t2_nick на таблицу t2 из БД bd2. 3. в БД bd1 выполнить select, который покажет разницу записей в таблицах t1 и t2: select * from t1 except select * from t2_nick with ur; 4. если структура таблиц t1 и t2 различна, то в select из п.3 вместо * перечислить только сравниваемые колонки 5. потом можно использовать insert into select во временную таблицу или сразу в t2_nick у меня этот вариант работает в 8.2 очень давно и применяется для проверки работы репликации. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 11:59 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Делается очень просто при помощи аналитической функции DENSE_RANK ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 12:51 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
пример: Код: 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. Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 13:01 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
gardenmanпример: Код: plaintext 1. 2. Мне нужно не найти какую-то конкретную запись, а выселектить значения после этой записи! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 14:14 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 14:15 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
qi_ip, Когда мне нужно было такое делать, я создавал в таблице вычисляемое поле (типа - конкатенации от ключей), строил по нему индекс - и работал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 14:35 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
BuryCommoner Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Вот полная выборка Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. Вот мой селект Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Выдает Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. Теряются записи с 1 по 5 Если > Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 16:34 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
говорю же, тот код, который я привёл, генерит корректрое where условие можно чуть дописать, запустить программку, и будет счастье самому просто некогда сейчас, если я это сделаю, то не сегодня я тогда чуть голову не сломал, когда писал тот код, но всё работает! только давно это было, и я забыл как where выглядит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 17:19 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
там для общнго случая написано, когда есть N ключей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 17:22 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Новый Годтам для общнго случая написано, когда есть N ключей Ок ок понятно! Тоже этот вариант смотрю )))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 17:51 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
qi_ip, извиняюсь. Видимо у вас что-то не так обрабатывается. У меня функция char() по другому себя ведет. qi_ipТеряются записи с 1 по 5 Это потому, что у вас почему-то Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 18:18 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Код: 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. Код: 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. Типа так что-ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 18:50 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Между прочим у вас там ключ не совсем удовлетворяет требованиям запроса. таймстемп должно впереди идти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2010, 18:52 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
BuryCommonerqi_ip, извиняюсь. Видимо у вас что-то не так обрабатывается. У меня функция char() по другому себя ведет. qi_ipТеряются записи с 1 по 5 Это потому, что у вас почему-то Код: plaintext Код: plaintext Странно, хотя в по cookbook должно быть как у вас...у меня вот так получилось Код: plaintext результат Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2010, 09:57 |
|
||
|
Помогите сделать селект
|
|||
|---|---|---|---|
|
#18+
Спасибо. Теперь буду знать, что вместо char(cast()) можно использовать digits() :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2010, 10:17 |
|
||
|
|

start [/forum/topic.php?fid=43&msg=36850752&tid=1602582]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
71ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
| others: | 304ms |
| total: | 482ms |

| 0 / 0 |
