我的程序中存在一個錯誤,它在我們的數據庫的字符串中複製撇號。這是字符串'RAYNAUD'S SYNDROME',在那裏有32K以上的撇號。編寫SELECT查詢以調用帶有許多撇號的字符串的最佳方法是什麼?我在網上看到的用於選擇帶撇號的字符串的所有演示只能處理單個撇號。SQL Server,如何查詢包含多個撇號的字符串?
0
A
回答
0
這將返回YourTable中包含至少一個撇號的YourTable中的所有行。將0替換爲需要檢查的撇號數。
select *
from [YourTable]
where LEN([YourColumn]) - LEN(REPLACE([YourColumn], '''', '')) > 0
0
若要提取有許多撇號的記錄,你可以寫這樣的查詢:
create table test (somedata varchar(100));
insert into test values ('''hello'' ''again''')
select * from test
where len(somedata) - len(REPLACE(somedata, '''', '')) > 0
要更新所有這些記錄,你可以做
update test
set somedata = REPLACE(somedata, '''', '')
where len(somedata) - len(REPLACE(somedata, '''', '')) > 0
0
兩種方法:
這是如果你正在尋找你提到的字符串的錯誤版本
SELECT * FROM myTable WHERE myColumn LIKE 'RAYNAUD''S SYNDROME' AND LEN(myColumn) > 18
,另一個是與超過2個單引號找到行(你可以改變它來尋找一些其他的閾值數)
SELECT * FROM myTable WHERE LEN(REPLACE(myColumn,'''','') < LEN(myColumn) - 2
+0
謝謝斧頭。我能夠通過以下查詢獲得結果: SELECT * FROM PatDx WHERE說明LIKE'RAYNAUD%'和LEN(描述)> 18 (對不起,StackOverflow的新增功能,不確定如何格式化代碼, t同意我) 我打算嘗試一個類似的UPDATE語句與該WHERE子句。 –
+0
只要注意不要有任何副作用(即其他OK字符串碰巧有'RAYNAUD')。 – hatchet
相關問題
- 1. 如何從搜索字符串中返回包含撇號的查詢結果字符串不包含撇號
- 2. 如何創建一個包含雙撇號的字符串?
- 3. 如何傳遞包含撇號的字符串在android中查詢?
- 4. 如何構建SQLite查詢以處理包含撇號的字符串
- 5. PHP撇號和查詢字符串
- 6. 查詢PrincipalSearcher包含多個字符串
- 7. 處理包含撇號的大字符串SQL
- 8. python,yaml如何解析包含撇號的字符串
- 9. 如何在SQL Server中包含每個字符串的搜索查詢?
- 10. 在字符串查找字符串包含SQL Server中的逗號
- 11. sql查詢字符串包含在C#
- 12. 按列包含字符串的SQL Server查詢順序
- 13. 如何包含撇號以顯示字符串
- 14. LINQ與多個SQL查詢中包含字符串
- 15. 解析出包含兩個撇號的字符串
- 16. 查詢包含許多字符串
- 17. 如何轉義在SQL查詢中使用的撇號字符?
- 18. SQL Server - 用單個撇號替換多個撇號
- 19. SQL - 包含多個子字符串?
- 20. 如何插入包含撇號的值?
- 21. 如何在XPath中表示包含撇號和引號的字符串?
- 22. SELECT查詢字符串包含'%'字符
- 23. 檢查字符串是否包含空格和多個@符號
- 24. 包含撇號的相同字符串的比較失敗
- 25. SQL查詢來查找其中包含多個字符串「a href」的列
- 26. 如何使SQL查詢文本參數接受包含撇號的句子
- 27. 在Linq to Sql查詢中比較兩個包含多個點的字符串
- 28. 如何包含在查詢字符串中的特殊字符
- 29. 如何檢查一個字符串是否包含字母或字母和撇號,但沒有數字?
- 30. 的SQL Server:如果條件字符串包含另一個字符串
什麼是select語句的目的更普遍?你只是想找到有壞字符串的行? – hatchet
@hatchet,確切地說,我試圖找出壞字符串,以便我可以用更新語句替換它們。 –
最好是,我想要做的是: SELECT * FROM(表名)WHERE(列名),然後指定可能與通配符在一行中有幾個撇號的東西。我感覺並不是所有我想要調用的行都有相同數量的撇號,但它們都有一個異常大量的撇號。 –