1. sql server 2008 只提取結果集中的英文,漢字或字母不要
SELECTleft(name,patindex('%[^a-zA-Z]%',name)-1)
FROMdbo.test
WHEREISNUMERIC(name)<>1
這樣就可以了
2. sql怎麼查詢出兩列欄位相同的數據(在忽略英文大小寫和空格的情況下)
欄位值去掉空格和轉換成大寫或小寫之後,再做比較就可以了。
不知道你是什麼資料庫,以ORACLE資料庫舉例:
SELECTDISTINCTIN1.*
FROMINVENTORYIN1
WHEREEXISTS(
SELECTIN2.*
FROMINVENTORYIN2
WHEREIN1.ID!=IN2.ID
ANDLOWER(REPLACE(IN1.NAME,''))=LOWER(REPLACE(IN2.NAME,''))
ANDLOWER(REPLACE(IN1.STD,''))=LOWER(REPLACE(IN2.STD,''))
)
3. 如何用sql語句把所有包含中文欄位的表篩選出來
通過sysobjects與syscolumns關聯就可以得到所有表的欄位名,再進行過濾就行了
select distinct a.name
from sysobjects a
join syscolumns b on a.id=b.id
where a.type = 'U' and b.name like '%[一-龥]%'
order by a.name
4. sql怎麼查詢出兩列欄位相同的數據(同時忽略英文大小寫和空格的情況下)
SQL 關鍵字 UPPer(),lower() 函數,
UPPer 統一轉換成大寫,
lower 統一轉換成小寫
假如表 T 中存在t 欄位,數據為:』abCD『
select * from T where UPPER(t)=UPPER(abCD)
上面是轉換成大寫再比較,轉換小寫用法類似。
5. SQL如何處理英文和中文分開
單條sql查詢句我不知道。寫個自定義函數吧,用ascii判斷每個字元。
6. sql 語句 急!!!! 數據將英文和數字去掉,只保留漢字的sql語句
1、創建測試表,
create table test_replace_str(value varchar2(200));
4、編寫語句,將英文和數字去掉,只保留漢字;
select t.*, regexp_replace(value, '[a-zA-Z0-9]', '') sec
from test_replace_str t;
7. sql 一格數據中有中英文 我怎麼刪除英文部分
SELECTREGEXP_REPLACE('ACSFsagfsd11asdasfassAAA','[a-z]|[A-Z]','')FROMDUAL;使用REGEXP_REPLACE函數,上面是參考的例子,去除所有字母(大小寫都去除),請採納
8. sql語句里 where條件中怎麼把帶有字母的結果過濾掉
SQL2000以上的話,就用正則吧
應該是 SELECT * FROM 表名 WHERE REGEXP_INSTR(列名, '[a-z]')=0
9. presto sql如何忽略中英文括弧匹配
中英文括弧是不同的符號,匹配不上很正常。
可以通過下面幾種方式處理:
1. 統一輸入,所有公司名在輸入的時候都把括弧統一成中文或英文(直接用字元串替換就行了),搜索的時候也統一一下。
舊的數據可以直接操作資料庫替換(操作前記得備份)
2. 搜索前將括弧替換為通配符,使用like做條件檢索。
如:搜索關鍵字 你好(北京)信息技術有限公司
則sql語句生成為 where companyname like '你好%北京%信息技術有限公司' (如果之前是用 = 作條件的話,兩邊不加% ,如果之前就是用like,在之前的條件中調整)
10. 在sql查詢中如何只查該欄位只包含漢字,不含其它符號、數字、英文之類的。請大神解答。
select * from 表名 where REGEXP_LIKE(列名,'[^\w]')