`

SQL脚本 字符串位数不足 填充字符

sql 
阅读更多
当变量字符串位数不足时,有时要填充字符,如比较年份月份时:
1. year = 2011, month = 9
2. year = 2011, month = 10
要比较两组月份(“201109”和“201110”)的先后

在oracle里可以这样:
select XXX
from YYY
where (to_char(year1) || '-' || LPAD(to_char(month1), 2, '0')) > (to_char(year2) || '-' || LPAD(to_char(month2), 2, '0'))


而在sql server数据库中没有LPAD函数可用, 可以这样做
select XXX
from YYY
where (cast(year1 as varchar) + '-' + right('0'+cast(month1 as varchar), 2)) > (cast(year2 as varchar) + '-' + right('0'+cast(month2 as varchar), 2))



当然方法很多,这里只记录一种个人认为比较不错的方法。








分享到:
评论
1 楼 modiliany 2011-10-11  
还可以采用转换成8位数值的方法来比较,
select XXX 
from YYY 
where (year1 * 10000 + month1 * 100 + day1) > (year2 * 10000 + month2 * 100 + day2)

相关推荐

    sqlserver-oracle 数据类型对照

    - `LPAD`、`LTRIM`和`RTRIM`分别用于在字符串左侧填充、去除左侧空白和去除右侧空白。 - `PATINDEX`和`INSTR`查找字符串中的模式或子串。 - `REPLACE`和`STUFF`在SQL Server中用于替换子串,Oracle中无直接对应。...

    Kettle_js脚本_示例

    填充字符串到指定长度,如果不足则用指定字符补足。 **7. getOcuranceString** 获取一个字符串在另一个字符串中的出现次数。 **8. indexOf** 查找一个字符串在另一个字符串中的首次出现位置。 **9. initCap** 将...

    Oracle SQL Fundamentals Part 1

    - **LPAD** 和 **RPAD**:分别用于左填充和右填充字符串。 - **REPLACE**:替换字符串中的某个子串。 - **TRIM**:移除字符串开头或结尾的指定字符。 **示例代码**: ```sql SQL> SELECT INITCAP('oracleSERVER'), ...

    oracle系统内置函数大全

    11. RPAD函数:使用指定字符集,在字符串的右侧填充,直到达到指定长度。 12. LPAD函数:与RPAD类似,但填充发生在字符串的左侧。 13. RTRIM函数:删除字符串右边指定字符集中的字符。 14. SOUNDEX函数:根据字符串...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    varchar2 1~4000字节 可变长度字符串,与CHAR类型相比,使用VARCHAR2可以节省磁盘空间,但查询效率没有char类型高 数值类型 Number(m,n) m(1~38) n(-84~127) 可以存储正数、负数、零、定点数和精度为38位的浮点数...

    Oracle常见函数集锦

    - `LPAD()` 和 `RPAD()`:在字符串左侧或右侧填充字符以达到指定长度。 2. **数值函数** - `ROUND()`:四舍五入数字到指定的小数位数。 - `TRUNC()`:截断数字到指定的小数位数。 - `MOD()`:返回两个数相除的...

    mysql脚本(inject data)

    - `LPAD(@beginnum, 7, 0)`:将数字转换为7位字符串,不足位数用0填充。 - `concat(20121105, @v_beginnum)`:拼接出完整的订单编号。 - `INSERT INTO test(ordernum) VALUES (@order)`:执行插入操作。 #### ...

    淘宝网开发人员数据库知识手册.docx

    注释用于在SQL脚本中添加说明性文本。Oracle支持两种注释风格:`--`用于单行注释,`/* ... */`用于多行注释。 **第五节 数据库的对象** 数据库对象是存储在数据库中的结构化单元,如表、视图、索引等。它们可以...

    专题资料(2021-2022年)《数据库技术》项目3 创建和维护表.ppt

    对于“计算机及应用”这个字符串,多余的字节会被填充空格。若字段类型为`varchar(20)`,则只占用实际字符串长度加1字节的存储空间,所以“计算机及应用”会占用12字节(11个字符加上1个结束符)。 **完整性约束:*...

    oracle-use.rar_Oracle drop use_oracle

    "查询位数补进"可能指的是使用`LPAD`或`RPAD`函数,这两个函数可以在字符串左侧或右侧填充特定字符以达到指定长度。例如,`SELECT LPAD(column, 5, '0') FROM table`将确保每个`column`的值至少有5位,不足的部分在...

    C#编程经验技巧宝典

    83 <br>0125 按要求生成指定位数编号 83 <br>0126 确定两字符串是否相等 84 <br>0127 判断两字符串中指定子串是否相等 84 <br>0128 判断字符串是否为日期格式 85 <br>0129 清除字符串中指定...

    Preprocessing-Data

    字符串数据清洗,如去除空白字符、统一大小写,可以使用字符串方法如`str.strip()`, `str.lower()`等。 在“Preprocessing-Data-main”文件夹中,可能包含各种数据预处理脚本或工具,比如特征选择、数据平衡、特征...

    .net面试题(共156题)

    这段代码通过遍历控件集合,检查每个控件是否为TextBox类型,然后将TextBox的Text属性设为空字符串。 10. 冒泡排序算法: 冒泡排序是一种简单的排序算法,通过不断交换相邻元素来逐步排序。给定数组,外层循环控制...

    JavaScript网页特效范例宝典源码

    实例095 验证字符串是否以指定字符开头 149 实例096 限制输入字符串的长度 150 3.2 字符串处理 152 实例097 小写金额转换为大写金额 152 实例098 去除字符串中的空格 155 实例099 转换输入文本中的回车和空格 156 ...

    2021-2022计算机二级等级考试试题及答案No.10305.docx

    - 空串: 表示一个空的字符串。 - 数值 0: 表示零。 - 无值: 表示未知或未指定的值。 - FALSE: 逻辑假。 **正确答案**: C (无值) --- #### 9. Access 中的字段显示控件类型 - **知识点**: 在 Microsoft Access...

Global site tag (gtag.js) - Google Analytics